Framework7 - Tabs JavaScript Events



Description

JavaScript events can be used when you are working with JavaScript code for the tabs.

Example

The following example demonstrates the use of JavaScript events for tabs 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>Tabs 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">Tabs Events</div>
                        <div class = "right"> </div>
                     </div>
                  </div>
                  
                  <div class = "page-content">
                     <div class = "content-block">
                        <div class = "buttons-row">
                           <a href = "#tab1" class = "tab-link active button">Tab 1</a>
                           <a href = "#tab2" class = "tab-link button">Tab 2</a>
                           <a href = "#tab3" class = "tab-link button">Tab 3</a>
                        </div>
                     </div>
                     
                     <div class = "tabs">
                        <div id = "tab1" class = "tab active">
                           <div class = "content-block">
                              <p>This is tab 1 content</p>
                              <p>Ut ac lobortis lacus, non pellentesque arcu. Quisque sodales 
                                 sapien malesuada, condimentum nunc at, viverra lacus. Class aptent taciti 
                                 sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
                                 Vivamus eu pulvinar turpis, id tristique quam. Aenean venenatis molestie diam,
                                 sit amet condimentum nisl pretium id. Donec diam tortor, mollis in vehicula id, 
                                 vehicula consectetur nulla. Quisque posuere rutrum mauris, eu rutrum turpis blandit 
                                 at. Proin volutpat tortor sit amet metus porttitor accumsan. Class aptent taciti 
                                 sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Ut dapibus 
                                 posuere dictum.</p>
                           </div>
                        </div>
                        
                        <div id = "tab2" class = "tab">
                           <div class = "content-block">
                              <p>This is tab 2 content</p>
                              <p>Ut ac lobortis lacus, non pellentesque arcu. Quisque sodales 
                                 sapien malesuada, condimentum nunc at, viverra lacus. Class aptent taciti 
                                 sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
                                 Vivamus eu pulvinar turpis, id tristique quam. Aenean venenatis molestie diam, 
                                 sit amet condimentum nisl pretium id. Donec diam tortor, mollis in vehicula id, 
                                 vehicula consectetur nulla. Quisque posuere rutrum   mauris, eu rutrum turpis blandit 
                                 at. Proin volutpat tortor sit amet metus porttitor  accumsan. Class aptent taciti 
                                 sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Ut dapibus 
                                 posuere dictum.</p>
                           </div>
                        </div>
                        
                        <div id = "tab3" class = "tab">
                           <div class = "content-block">
                              <p>This is tab 3 content</p>
                              <p>Nulla gravida libero eget lobortis iaculis. In sed elit eu nibh 
                                 adipiscing faucibus. Sed ac accumsan lacus. In ut diam quis turpis fringilla 
                                 volutpat. In ultrices dignissim consequat. Cras pretium tortor et lorem condimentum 
                                 posuere. Nulla facilisi. Suspendisse pretium egestas lacus ac laoreet. Mauris rhoncus
                                 quis ipsum quis tristique. Vivamus ultricies urna quis nunc egestas, in euismod turpis 
                                 fringilla. Nam tellus massa, vehicula eu sapien non, dapibus tempor lorem. Fusce 
                                 placerat orci arcu, eu dignissim enim porttitor vel. Nullam porttitor vel dolor sed 
                                 feugiat. Suspendisse potenti. Maecenas ac mattis odio. Sed vel ultricies lacus, sed 
                                 posuere libero.</p>
                           </div>
                        </div>
                        
                     </div>
                  </div>
               </div>
            </div>
         </div>
      </div>
      
      <script>
         var myApp = new Framework7();
         var $$ = Dom7;

         $$('#tab1').on('show', function () {
            myApp.alert('Tab 1 is visible');
         });

         $$('#tab2').on('show', function () {
            myApp.alert('Tab 2 is visible');
         });

         $$('#tab3').on('show', function () {
            myApp.alert('Tab 3 is visible');
         });
      </script>
      
      <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 tabs_js_events.html file in your server root folder.

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

  • The example allows switching between tabs and the alert event occurs when the tab becomes visible.

framework7_tabs.htm
Advertisements