jquery mobile开发中常见的问题

推荐 一个JQuery Mobile 学习网站:http://www.lampweb.org/
1页面缩放显示问题

问题描述:

页面似乎被缩小了,屏幕太宽了。

解决办法:

在head标签内加入:

<meta name="viewport" content="width=device-width, initial-scale=1">


2 页面跳转后样式丢失js失效

问题描述:

用ajax跳转的时候,从a.html跳转到b.html后,b.html的css以及js都失效了。

解决办法:

1、将当前页面需要用到的css以及js放在<page>div内。

原理:

由于jqm的ajax跳转的时候,只会把b.html中<page>内的内容加载进dom,而<page>外的代码都不会加载,所以导致在<page>外的js和css都失效了。

2、如果想在页面加载时运行JAVASCRIPT,需在A标签中加data-ajax="false".

3、在a标签上加上 target="_top",使用这个方法后,JS有效,但有得必有失啊,使用这个方法的缺点是JQM原生提供的转场效果不再有效。


3 跳转时重复调用pageinit方法的解决办法

问题描述:

用ajax跳转的时候,从a.html跳转到b.html,用从b.html返回a.html等等这种反复跳转的时候,pageinit方法内的代码会调用多次。

解决办法:

在page中加入 data-dom-cache="true"属性,如:

<div data-role="page" id="myPage" data-dom-cache="true">

然后把pageinit方法换为pageshow,如:


$("#myPage").live("pageshow", function() {
//...do something
});


4 如何调用loading效果

js代码:

//显示loading
function showLoading(){
$.mobile.loadingMessageTextVisible = true;
$.mobile.showPageLoadingMsg("a", "加载中..." );
} 
//隐藏loading
function hideLoading(){
$.mobile.hidePageLoadingMsg();
} 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值