`

JQM panel使用实例

阅读更多
工程中需要这样的要求,点击左上角的图标打开或关闭panel,按返回键(针对android)如果panel处于open状态就退出App,否则先打开panel,再按下返回键才退出App。

本工程使用的是cordava+JQM

先看一下html:

<div data-role="page" id="homepage" data-theme="a">
		<!-- 
		data-swipe-close="true"
		data-display="overlay" or reveal or push
		 -->
		<div data-role="panel" id="mypanel" data-position-fixed="true" data-position="left" data-display="push" data-theme="a" style="background:#2b2c30;" data-dismissible="false" data-animate="true" > 
			
			<ul data-role="listview" data-inset="false" data-count-theme="c" data-icon="false">
				<li id="home"><a href="#mypanel"><img src="img/ic_0.png"/><span class="menu_span">Home</span></a></li>
				<li id="orders"><a href="#my_orders_page"><img src="img/ic_1.png"/><span class="menu_span">Orders</span><span class="ui-li-count" id="orderNum">0</span></a></li>
				<li id="reward" onclick="toRewardsPage();"><a href="#"><img src="img/ic_9.png"/><span class="menu_span">Reward</span></a></li>
				<li id="prizes"><a href="#"><img src="img/ic_2.png"/><span class="menu_span">Scratch and Win</span></a></li>
				<li id="cards" onclick="toMyPaymentCardPage();"><a href="#"><img src="img/ic_3.png"/><span class="menu_span">My Payment Card</span></a></li>
				<li id="favorites"><a href="#my_favorites_page"><img src="img/ic_4.png"/><span class="menu_span">Favorites</span></a></li>
				<li id="settings"><a href="#setting_page"><img src="img/ic_5.png"/><span class="menu_span">Settings</span></a></li>
				<li id="signIn"><a href="#sign_in_page"><img src="img/ic_7.png"/><span class="menu_span">Sign In</span></a></li>
				<li id="signUp"><a href="#sign_up_page"><img src="img/ic_8.png"/><span class="menu_span">Sign Up</span></a></li>
				<li id="signOut"><a href="#" onclick="toSignOutPage();"><img src="img/ic_6.png" style="width:32px;height:32px;"/><span class="menu_span">Sign Out</span></a></li>
			</ul>
		</div>
		<div data-role="header" data-id="main" data-theme="a" data-position="fixed" data-tap-toggle = "false">
		    <a href="#mypanel" data-role="none" id="openPanel"><img  src="img/btn_menu_normal.png"/></a>
		    
		    <h1>THE BURGER JOINT</h1>
		    
		</div>

		<div data-role="content">
			test
		</div>

	</div>



需要安装cordova device插件

<script type="text/javascript" charset="utf-8">
var isPanelOpen=false;
$(document).ready(function() {

	$( "#homepage #mypanel" ).panel({ 
	  	open: function( event, ui ) {
	  		isPanelOpen = true;
	  	},
	 	close: function( event, ui ) {
	 		isPanelOpen = false;
	 	} 
	});
	//返回键
	function onBackKeyDown(){
		
		if(getActivePageId()=="homepage"){
			if(isPanelOpen){
				if(device.platform=="Android"){
					navigator.app.exitApp();
				}
			}else{
				$( "#homepage #mypanel" ).panel( "open" );
			}
		}else{
			window.history.back();
		}
		
		
		
	}
	// Cordova is ready
	function onDeviceReady() {
		document.addEventListener("backbutton", onBackKeyDown, false);
                //document.removeEventListener("backbutton", onBackKeyDown, false); //注销返回键
	}

	
	initialize=function(){		
		document.addEventListener("deviceready", onDeviceReady, false);
	};
	initialize();
});
</script>




panel Api参考:http://api.jquerymobile.com/panel/
分享到:
评论

相关推荐

    jqm模仿iPhone桌面菜单,jqm实战开发,jqm开发例子Demo

    jqm模仿iPhone桌面菜单,jqm实战开发,jqm开发例子Demo jqm模仿iPhone jqmDemo jqm例子 jqm实战开发 jqm选项卡 使用jqm实现iPhone桌面功能,jQuery Mobile实现选项卡功能

    jqm文件上传,上传图片,jqm的表单操作,jqm的ajax的使用,jqm文件操作大全,文件操作demo

    本篇文章将详细探讨`jqm文件上传`、`jqm的表单操作`、`jqm的ajax使用`以及相关的`文件操作demo`,帮助你掌握如何在jqm环境中实现文件,尤其是图片的上传功能。 1. **jqm文件上传** jQuery Mobile提供了对HTML5表单...

    jqm中文时间控件

    通过使用jqm中文时间控件,开发者可以快速地在项目中添加时间选择功能,而无需从头开始编写复杂的JavaScript代码或CSS样式。 该控件的实现主要基于jQuery库和jQuery Mobile的增强型表单元素。jQuery是一个强大的...

    jqm开发的音乐播放器

    综上所述,"jqm开发的音乐播放器"项目不仅展示了 jqMobi 在移动前端开发中的实用性,也体现了其在构建交互式音乐播放应用方面的潜力。开发者可以通过这个实例学习如何结合 jqMobi 的特性和 HTML5 的音频 API 来创建...

    jqm的多列布局demo,html5的多列布局demo,多列布局的详细讲解,html5开发实例详解

    jqm的多列布局demo,html5的多列布局demo,多列布局的详细讲解,html5开发实例详解

    JQM实战源码

    2. **动态添加内容**:可以使用`$.mobile.loadPage()`方法动态加载页面,或者通过`$.ajax()`获取数据后使用`$(...).listview('refresh')`更新列表视图。 **五、性能优化** 1. **延迟增强**:对于大量数据的页面,...

    JQM1.4.5-DEMOS:JQM 移动演示 1.4.5

    1. **示例代码**:各种JQM组件和功能的实际示例,开发者可以参考这些代码学习如何使用JQM。 2. **CSS文件**:JQM的核心样式表,包括主题颜色和其他样式规则。 3. **JavaScript文件**:jQuery Mobile库的JavaScript...

    jquery mobile的所有版本库api文档简单示例demo下载jqm学习大全

    JQM 的使命是向所有主流移动浏览器提供一种统一体验,使整个 Internet 上的内容更加丰富 — 不管使用哪种查看设备。 JQM 的目标是在一个统一的 UI 中交付超级 JavaScript 功能,跨最流行的智能手机和平板电脑设备...

    jqm-demo.rar

    http://blog.csdn.net/chelen_jak/article/details/19397569 源码

    24时区APK+源码, android+JQM

    标题 "24时区APK+源码, android+JQM" 提供了一个关于Android应用程序开发的项目,其中结合了Java和jQuery Mobile(JQM)技术。这个项目旨在帮助初学者理解如何在Android平台上利用HTML来构建用户界面,并且通过JQM...

    jqm4gwt-standalone-1.3.5.zip

    由于"jqm4gwt与所有dependencies gwt库捆绑在一起",这意味着除了jqm4gwt库本身,该压缩包还包含了所有必要的依赖库,如jQuery库、jQuery UI(如果需要)和其他可能的GWT插件或库,以确保开发者能够直接使用,无需再...

    jqm+ phonegap编写的联系人

    虽然修改联系人功能尚未实现,但这个实例已经足以展示如何整合这两项技术来打造交互性良好的跨平台应用。 jQuery Mobile是一款强大的前端框架,专注于为触摸设备提供一致的用户体验。它基于HTML5和CSS3,提供了丰富...

    websocket+jqm

    例如,在描述中的"websocket+jqm+jqplot"的项目中,可能是一个使用WebSocket获取实时数据,通过jQuery Mobile来展示界面,同时利用jqPlot库对数据进行可视化。jqPlot是一个JavaScript图表库,能够绘制各种类型的图表...

    滚动日期插件Mobiscroll2.14.4,jqm_databox1.4.5,使用样例

    压缩包内的"mobiscroll日期插件"很可能包含了Mobiscroll的核心文件、示例代码和必要的资源文件,供开发者参考和使用。通过查看和学习这些样例,开发者可以快速理解如何在实际项目中部署和配置Mobiscroll,实现高效的...

    sample101:示例 jqm 模板

    4. **定制主题**:根据需求修改默认的主题,可以使用 jqm 的 ThemeRoller 工具自定义颜色和样式。 5. **测试与调试**:在不同设备和浏览器上进行测试,确保兼容性和性能。 【sample101-master 项目详解】 "sample...

    JQM301语音模块,语音模块,JQM301语音芯片,MP3语音芯片.pdf

    JQM301语音模块,语音模块,JQM301语音芯片,MP3语音芯片.pdf

    jqm带参数跳转

    `jqm带参数跳转`这个主题,涉及到的关键知识点包括:页面结构、页面链接、`data-url`属性、`data-rel`属性以及使用`data-transition`控制过渡效果。 首先,jQuery Mobile 使用一个单一 HTML 文件来构建多个“页面”...

    jQM:jQM文档的免费社区应用程序的源代码-app source code community

    10. **开发工具**:使用jQM的开发者可能还需要熟悉其他开发工具,如文本编辑器、浏览器开发者工具、打包工具(如Grunt或Gulp)以及版本控制工具(如Git)。 通过学习这个开源项目,开发者不仅可以了解jQM的工作原理...

    jqm chart 图表

    要在项目中使用jqm chart,首先需要确保已经引入了jQuery Mobile的核心库。接着,你需要从Rockncoder-JQMCharts-78aa39e这个压缩包中提取相应的js和css文件,将其链接到你的HTML文档中。通常,你会在head部分引入...

Global site tag (gtag.js) - Google Analytics