引用jquery mobile 后发现点击无法跳转页面,js和css都失效;
原因:
这个是 jquery mobile 默认的一种页面加载方式,由于jqm的ajax跳转的时候,只会把b.html中<page>内的内容加载进dom,而<page>外的代码都不会加载,所以导致在<page>外的js和css都失效了。
解决方法:
一、禁止ajxa跳转两种情况:
1、禁止局部ajax跳转
2、禁止全局ajax跳转
1:在a标签里添加属性 data-ajax="false" 或 rel="external"
2:设置一个全局的禁止ajax跳转的方式
$(document).bind("mobileinit", function() {
//disable ajax nav
$.mobile.ajaxEnabled=false
});
注意
:上面的代码需要放在jquery.mobile-xxx.min.js引入之前。
初始化的设置都需要放在此处,例如加载错误信息的设置:
$.mobile.pageLoadErrorMessage = 'Sorry, something wentwrong. Please try again.';
二、将页面内部JS,css 写在data-role="page"标签下,这样无论页面怎样跳转,均可以运行。