Framework7 - Overlay Sortable List from HTML



Description

You can enable and disable sortable by using the classes and data attributes as shown below −

S.No Type & Description
1

open-sortable

It is required to enable sortable mode to any HTML element.

2

close-sortable

It is required to disable sortable mode.

3

toggle-sortable

It is required to toggle sortable mode.

4

data-sortable=".sortable"

Whenever your app has more than one sortable list in app, you need to specify appropriate sortable list by using this attribute as additional attibute on HTML element.

Example

The following example specifies enabling, disabling and toggling of the sorting of the HTML element on links 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>Sortable from HTML</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 = "navbar">
               <div class = "navbar-inner">
                  <div class = "center sliding">Sortable from HTML</div>
               </div>
            </div>
            
            <div class = "pages navbar-through">
               <div data-page = "index" class = "page navbar-fixed">
                  <div class = "page-content">
                  
                     <div class = "content-block">
                        <p><a href = "#" data-sortable = ".sortable" class = "open-sortable">Click here to enable sortable</a></p>
                        
                        <p><a href = "#" data-sortable = ".sortable" class = "close-sortable">Click here to disable sortable</a></p>
                        
                        <p><a href = "#" data-sortable = ".sortable" class = "toggle-sortable">Click here to toggle sortable</a></p>
                     </div>
                     
                     <div class = "list-block sortable">
                        <ul>
                           <li>
                              <div class = "item-content">
                                 <div class = "item-media"><i class = "icon icon-form-name"></i></div>
                                 
                                 <div class = "item-inner">
                                    <div class = "item-title">Sachin</div>
                                    <div class = "item-after">India</div>
                                 </div>
                                 
                              </div>
                              <div class = "sortable-handler"></div>
                           </li>
                           
                           <li>
                              <div class = "item-content">
                                 <div class = "item-media"><i class = "icon icon-form-name"></i></div>
                                 
                                 <div class = "item-inner">
                                    <div class = "item-title">Smith</div>
                                    <div class = "item-after">Australia</div>
                                 </div>
                                 
                              </div>
                              <div class = "sortable-handler"></div>
                           </li>
                           
                           <li>
                              <div class = "item-content">
                                 <div class = "item-media"><i class = "icon icon-form-name"></i></div>
                                 
                                 <div class = "item-inner">
                                    <div class = "item-title">Morgan</div>
                                    <div class = "item-after">England</div>
                                 </div>
                                 
                              </div>
                              <div class = "sortable-handler"></div>
                           </li>
                           
                           <li>
                              <div class = "item-content">
                                 <div class = "item-media"><i class = "icon icon-form-name"></i></div>
                                 
                                 <div class = "item-inner">
                                    <div class = "item-title">Dhoni</div>
                                    <div class = "item-after">India</div>
                                 </div>
                                 
                              </div>
                              <div class = "sortable-handler"></div>
                           </li>
                           
                           <li>
                              <div class = "item-content">
                                 <div class = "item-media"><i class = "icon icon-form-name"></i></div>
                                 
                                 <div class = "item-inner">
                                    <div class = "item-title">Gayle</div>
                                    <div class = "item-after">West Indies</div>
                                 </div>
                                 
                              </div>
                              <div class = "sortable-handler"></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>
         // here initialize the app
         var myApp = new Framework7();

         // If your using custom DOM library, then save it to $$ variable
         var $$ = Dom7;

         // Add the view
         var mainView = myApp.addView('.view-main', {
            // enable the dynamic navbar for this view
            dynamicNavbar: true
         });
      </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 enable_disable_sortable_from_html.html file in your server root folder.

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

  • The example specifies enabling, disabling and toggling of the sorting of the HTML element on links.

framework7_list_views.htm
Advertisements