Framework7 - Swipeout Events



Description

To detect how a user interacts with the swipeout, you can use swipeout events. The following table lists the events supported by the Framework7 −

S.No Event & Description Target
1

swipeout

This event will be triggered when you move swipeout element.

Swipeout Element

<li class = "swipeout">

2

open

Whenever the swipeout begins its opening animation, this event will be triggered.

Swipeout Element

<li class = "swipeout">

3

opened

Whenever the swipeout completes its opening animation, this event will be triggered.

Swipeout Element

<li class = "swipeout">

4

close

Whenever the swipeout closing animation is initiated, this event will be triggered.

Swipeout Element

<li class = "swipeout">

5

closed

Whenever the swipeout closing animation completes, this event will be triggered.

Swipeout Element

<li class = "swipeout">

6

delete

Whenever the swipeout element begins its delete animation, this event will be triggered.

Swipeout Element

<li class = "swipeout">

7

deleted

This event will be triggered after the element finishes its delete animation right before it will be removed from DOM.

Swipeout Element

<li class = "swipeout">

Example

The following example demonstrates the use of swipeout events 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 events</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 Events</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</div>
                                 </div>
                                 
                              </div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "action1">Task</a><a href = "#" data-confirm = "Are you sure to delete this item?" class = "swipeout-delete">Delete</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">With confirm title</div>
                                    <div class = "item-after"> <span class = "badge">78</span></div>
                                 </div>
                                 
                              </div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "action1">Task</a><a href = "#" data-confirm = "Are you sure to delete this item?" data-confirm-title = "Delete?" class = "swipeout-delete">Delete</a></div>
                           </li>
                        </ul>
                     </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;

         $$('.swipeout').on('deleted', function () {
            myApp.alert('Item removed');
         });

         $$('.swipeout').on('opened', function () {
            myApp.alert('Item opened');
         });

         $$('.swipeout').on('closed', function () {
            myApp.alert('Item closed');
         });
      </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_events.html file in your server root folder.

  • Open this HTML file as http://localhost/list_views_swipe_events.html and the output is displayed as shown below.

  • The example provides user interaction with the swipeout by using the swipeout events and these events will be triggered when you move, open, close and delete the swipeout element.

framework7_list_views.htm
Advertisements