Dynamic Toolbars


Advertisements


Description

You can inject toolbars dynamically onclick of a button. You need to update the page height and padding by invoking below function:

$.mobile.resetActivePageHeight()

Example

The below example demonstrates the use of dynamic toolbars in jQuery Mobile.

<!DOCTYPE html>
<html>
<head>
   <title>Dynamic Toolbars</title>
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
   <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
   <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
   <script>
      $( document ).on( "click", "#inject-toolbars", function() {
         $( "<div data-role='header'><h2>Dynamic Header</h2></div>")
             .prependTo( "#page-with-dynamic-toolbars" )
             .toolbar({ position: "fixed" });
         $( "<div data-role='footer'><h2>Dynamic Footer</h2></div>")
             .appendTo( "#page-with-dynamic-toolbars" )
             .toolbar({ position: "fixed" });
         $.mobile.resetActivePageHeight();
      });
   </script>
</head>
<body>
   <div data-role="page" class="jqm-demos" id="page-with-dynamic-toolbars" data-url="page-with-dynamic-toolbars">
      <div role="main" class="ui-content jqm-content jqm-fullwidth">
         <h2>Page content</h2>
         <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>
         <div data-demo-html="#page-with-dynamic-toolbars" data-demo-js="true">
            <button id="inject-toolbars" class="ui-btn ui-btn-inline ui-corner-all">Inject toolbars</button>
         </div>
      </div>
   </div>
</body>
</html>

Output

Let's carry out the following steps to see how above code works:

  • Save above html code as toolbar_widget_dynamic.html file in your server root folder.

  • Open this HTML file as http://localhost/toolbar_widget_dynamic.html and output as below gets displayed.