
- jQuery Mobile Tutorial
- jQuery Mobile - Home
- jQuery Mobile - Overview
- jQuery Mobile - Setup
- jQuery Mobile - Pages
- jQuery Mobile - Icons
- jQuery Mobile - Transitions
- jQuery Mobile - Layouts
- jQuery Mobile - Widgets
- jQuery Mobile - Events
- jQuery Mobile - Forms
- jQuery Mobile - Themes
- jQuery Mobile - CSS Classes
- jQuery Mobile - Data Attributes
- jQuery Mobile Useful Resources
- jQuery Mobile - Interview Questions
- jQuery Mobile - Quick Guide
- jQuery Mobile - Useful Resources
- jQuery Mobile - Discussion
jQuery Mobile - Dynamic Toolbars
Description
You can inject toolbars dynamically on the click of a button. You need to update the page height and padding by invoking the following function.
$.mobile.resetActivePageHeight()
Example
Following 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 = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"> <script src = "https://code.jquery.com/jquery-1.11.3.min.js"></script> <script src = "https://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 the above code works −
Save the 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 the following output will be displayed.
jquery_mobile_widgets.htm
Advertisements