PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

小强的HTML5移动开发之路(53)——jQueryMobile页面间参数传递

黄舟
黄舟 原创
2017-02-15 14:03:18 1378浏览

在单页模版中使用基于HTTP的方式通过POST和GET请求传递参数,而在多页模版中不需要与服务器进行通信,通常在多页模版中有以下三种方法来实现页面间的参数传递。

1、GET方式:在前一个页面生成参数并传入下一个页面,然后在下一个页面中进行GET内容解析。

2、通过HTML5的Web Storage进行参数传递。

3、建立当前页面变量,在前一个页面将所需传递的参数内容赋值到变量中,在后一个页面从变量中将参数取出来。(程序灵活性较弱)

一、以GET方式实现页面间参数传递





练习






	function getParameterByName(name){
		var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search);
		return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
	}
	$('//m.sbmmt.com/m/faq/#page_Parameter1').live('pageshow',  function(event, ui){
		alert("第二个页面的参数:" + getParameterByName('parameter'));
	});


     

页面参数传值

     

传递参数进入下一页,以Alert方式显示参数内容。
 传递参数进入下一页
 

 

       

页面参数传递

     

通过Alert显示前一个界面参数。
    返回

 

 

注意:要注明访问的页面形式为外部链接形式rel="external",否则页面间参数传递无法正常执行。

二、通过HTML5 Web Storage特性实现参数传递

通常包含两部分,sessionStorage是将存储内容以会话的形式存储在浏览器中,由于是会话级别的存储,当浏览器关闭之后,sessionStorage中的内容会全部消失。localStorage是基于持久化的存储,类似于传统HTML开发中cookie的使用,除非主动删除localStorage中的内容,否则将不会删除。

检查浏览器支持Web Storage特性:





练习






if(window.localStorage){ alert("浏览器支持localStorage"); }else{ alert("浏览器暂不支持localStorage"); } if(window.sessionStorage){ alert("浏览器支持sessionStorage"); }else{ alert("浏览器暂不支持sessionStorage") }

通常,在jQuery Mobile中实现页面间参数传递时,我们不使用localStorage而是使用sessionStorage,因为不必持久化在本地。




练习






	$('//m.sbmmt.com/m/faq/#page_Parameter1').live('pageshow', function(event, ui){
		alert("第二个界面的参数:" + sessionStorage.id);
	});


页面参数传递

传递参数进入下一页,以Alert方式显示参数内容。
传递参数进入下一页

页面参数传递

通过Alert显示来自前一个界面的参数。
返回

以上就是小强的HTML5移动开发之路(53)——jQueryMobile页面间参数传递 的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!



声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。