jquerymobile跳转方法_关于jquery mobile的页面跳转

展开全部

jm转场32313133353236313431303231363533e4b893e5b19e31333335323534传参确实是奇葩的东西,首先你要理解:如果采用changePage转场,那么只需要第一个html引入Javascript,也就是说所有页面的Javascript是共享的。

那么一个解决方案是:你在page1.html通过changePage转场到page2.html之前,在Javascript中定义一个公共常量,这个常量就是要给page2.html的参数。然后跳转到page2.html的时候通过pageinit事件去获取常量。var params1 = xxx;

$(document).on("pageinit","#page2",function(){

params1....

});

上面这是最简单但不安全合理的解决方法。

你说的禁用转场也可行,但是第二个页面就是全新页面了,不仅没转场效果,而且得重新加载所有文件,性能不行。

传说中最优的方案是绑定pagebeforechange事件,$(document).bind("pagebeforechange", handleChangePage),这个事件能在page1跳转后、page2初始化前触发,并且通过e.target.baseURI可以获取URL信息,剩下就是解析参数,很简单了。$(document).bind("pagebeforechange", beforechange);

function beforechange(e, data) {

if (typeof data.toPage != "string") {

var url = $.mobile.path.parseUrl(e.target.baseURI)

var re = 'details.html';

if (url.href.search(re) != -1) {

var page = $(e.target).find("#detailsPage");

var d = data.options.data;

var data = getUrlParam(url.href);

page.find("#nameDiv").html(decodeURIComponent(data[0]));

page.find("#timeDiv").html(decodeURIComponent(data[1]));

page.find("#contentDiv").html(decodeURIComponent(data[2]));

}

}

}

可能你还有一些疑惑,这没问题,你可以去百度搜索"JqueryMobile转场和参数传递“,现在已经有很多文章介绍了。

最后吐槽一下:JqueryMobile在Android下真的跑不快!但是适合不懂移动开发,只会web开发的同学入门。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值