根据全局配置选项中的指定,我正试图使用中指定的脚本顺序覆盖jQuery Mobile的默认设置
http://jquerymobile.com/test/docs/api/globalconfig.html
然而,当我在ios设备(运行ios5的iphone4)上浏览页面时,我能够做到这一点,一旦你访问了几个链接,或者点击了几次后退按钮,它们似乎是重复的,并出现在一个又一个的顶部。
这是我订的剧本。
<script src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.4.min.js"></script>
<script>
// my custom script
$(document).bind("mobileinit", function(){
//apply overrides to default settings
$.mobile.touchOverflowEnabled = true;
$.mobile.loadingMessage = false;
$.mobile.defaultPageTransition = 'none';
});
</script>
<script src="//ajax.aspnetcdn.com/ajax/jquery.mobile/1.0/jquery.mobile-1.0.min.js"></script>
以下是示例(查看ios设备上的错误视图):
http://dev.solidstategroup.com/ssgwebsite/mobile/
我不确定我做错了什么,我在任何地方都没有遇到这个问题。奇怪的是,这个问题无法在ios模拟器或浏览器中重现。
我已经删除了所有其他脚本来消除这些。
如果有人能建议或想办法以另一种方式覆盖默认设置,这可能会对其他人有所帮助。
非常感谢。
解决方案是删除下面的touchOverflow功能。
$.mobile.touchOverflowEnabled = true;
删除此参数意味着touchOverFlowEnabled设置为其默认值false。
这个功能显然是不稳定的,正如它在文档中所说:-
http://jquerymobile.com/test/docs/pages/touchoverflow.html
有一些已知的缺点,文档建议谨慎使用(尽管没有列出这个特定的问题)。