- 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 - 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