- Framework7 - Layouts
- Framework7 - Navbars
- Framework7 - Toolbars
- Framework7 - Search Bar
- Framework7 - Status Bar
- Framework7 - Side Panels
- Framework7 - Content Block
- Framework7 - Layout Grid
- Framework7 - Overlays
- Framework7 - Preloaders
- Framework7 - Progress Bar
- Framework7 - List Views
- Framework7 - Accordion
- Framework7 - Cards
- Framework7 - Chips
- Framework7 - Buttons
- Framework7 - Action Button
- Framework7 - Forms
- Framework7 - Tabs
- Framework7 - Swiper Slider
- Framework7 - Photo Browser
- Framework7 - Autocomplete
- Framework7 - Picker
- Framework7 - Calendar
- Framework7 - Refresh
- Framework7 - Infinite Scroll
- Framework7 - Messages
- Framework7 - Message Bar
- Framework7 - Notifications
- Framework7 - Lazy Load
- Framework7 Styling
- Framework7 - Color Themes
- Framework7 - Hairlines
- Framework7 Templates
- Framework7 - Templates Overview
- Framework7 - Auto Compilation
- Framework7 - Template7 Pages
- Framework7 Fast Clicks
- Framework7 - Active State
- Framework7 - Tap Hold Event
- Framework7 - Touch Ripple
- Framework7 Useful Resources
- Framework7 - Quick Guide
- Framework7 - Useful Resources
- Framework7 - Discussion
Framework7 - Swipeout JavaScript API
Description
The swipeout provides you with JavaScript API to control its elements. The appropriate app's properties and methods are listed below −
| S.No | Methods | Description & Parameters |
|---|---|---|
| 1 | myApp.swipeoutOpen(el, direction, callback) |
It is used to reveal swipeout actions on element which is specified.
|
| 2 | myApp.swipeoutClose(el, callback) |
It is used to close swipeout actions on element which is specified.
|
| 3 | myApp.swipeoutDelete(el, callback) |
It is used to delete specified element of swipeout.
|
| 4 | myApp.swipeoutOpenedEl | This property contains link to swipeout HTMLElement that is opened currently. |
Example
The following example allows swiping out elements by using the use of JavaScript API in Framework7 −
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1,
maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Swipeout JavaScript API</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "pages">
<div data-page = "home" class = "page navbar-fixed">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center">Swipeout JavaScript API</div>
<div class = "right"> </div>
</div>
</div>
<div class = "page-content">
<div class = "list-block">
<ul>
<li class = "swipeout">
<div class = "swipeout-content item-content">
<div class = "item-media"><i class = "icon icon-form-name"></i></div>
<div class = "item-inner">
<div class = "item-title">Item title</div>
<div class = "item-after">Label 1</div>
</div>
</div>
<div class = "swipeout-actions-right"><a href = "#" class = "action1 bg-red">Task</a></div>
</li>
<li class = "swipeout">
<div class = "swipeout-content item-content">
<div class = "item-media"><i class = "icon icon-form-name"></i></div>
<div class = "item-inner">
<div class = "item-title">Item with badge</div>
<div class = "item-after"> <span class = "badge bg-lightblue">78</span></div>
</div>
</div>
<div class = "swipeout-actions-right"><a href = "#" class = "action1 bg-red">Task</a></div>
</li>
<li class = "swipeout">
<div class = "swipeout-content item-content">
<div class = "item-media"><i class = "icon icon-form-name"></i></div>
<div class = "item-inner">
<div class = "item-title">Another item</div>
<div class = "item-after">Label 2</div>
</div>
</div>
<div class = "swipeout-actions-right"><a href = "#" class = "action1 bg-red">Task</a></div>
</li>
<li class = "swipeout">
<div class = "swipeout-content item-content">
<div class = "item-media"><i class = "icon icon-form-name"></i></div>
<div class = "item-inner">
<div class = "item-title">Item title</div>
<div class = "item-after">Label 3</div>
</div>
</div>
<div class = "swipeout-actions-right"><a href = "#" class = "action1 bg-red">Task</a></div>
</li>
<li class = "swipeout">
<div class = "swipeout-content item-content">
<div class = "item-media"><i class = "icon icon-form-name"></i></div>
<div class = "item-inner">
<div class = "item-title">Item with badge</div>
<div class = "item-after"> <span class = "badge bg-lightblue">78</span></div>
</div>
</div>
<div class = "swipeout-actions-right"><a href = "#" class = "action1 bg-red">Task</a></div>
</li>
</ul>
</div>
<div class = "content-block">
<p><a href = "#" class = "open-first">Open first item</a></p>
<p><a href = "#" class = "open-second">Open second item and close after 1s</a></p>
<p><a href = "#" class = "delete-last">Delete last item</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
var myApp = new Framework7();
var $$ = Dom7;
$$('.open-first').on('click', function() {
myApp.swipeoutOpen('li.swipeout:first-child');
});
$$('.open-second').on('click', function() {
myApp.swipeoutOpen($$('li.swipeout').eq(1));
setTimeout(function () {
myApp.swipeoutClose($$('li.swipeout').eq(1));
}, 1000);
});
$$('.delete-last').on('click', function(){
myApp.swipeoutDelete('li.swipeout:last-child');
});
</script>
</body>
</html>
Output
Let us carry out the following steps to see how the above given code works −
Save the above given HTML code as list_views_swipe_jsapis.html file in your server root folder.
Open this HTML file as http://localhost/list_views_swipe_jsapis.html and the output is displayed as shown below.
The example allows you to open the element, deleting the element by clicking on the links.