项目中用到了jquery mobile1.4.2版本,下面是项目中遇到的一些问题:
1、从一个页面链接到另一个页面后,处于页脚位置的导航栏总是闪烁一下
<div data-role="footer" data-id="l" data-position="fixed">
<div data-role="navbar">
<ul>
<li><a href="activityCenter.html" data-icon="home">Home</a>
<li><a href="#" data-icon="search">Contacts</a>
<li><a href="#" data-icon="info">Events</a>
<li><a href="#" data-icon="grid">News</a>
</ul>
</div>
</div>
看了官方提供的demo,\jquery.mobile-1.4.2\demos\toolbar-fixed-persistent,在footer标签中添加了data-theme="a"后,闪屏的问题解决
<div data-role="footer" data-id="l" data-position="fixed" data-theme="a">
2、
在使用jQuery Mobile进行Web开发中,当页面跳转时(pageA => pageB),在pageB中引用的JS并未成功运行。因为,JQM并为将整个页面加载到当前的dom中,仅将data-role="page"元素加入当前的dom中。
因此,在<head>中引入的外部JS文件,以及<page>标签外的JS均不能正常运行,刷新页面后方可加载成功。
鉴于JQM这个特性不太可能主动更改,可以用两种方法来解决:
一是在index页面中,注册所有需要使用到的外部JS文件,或者使用母版页面来统一;
二是将页面内部JS写在data-role="page"标签下,这样无论页面怎样跳转,均可以运行。
3、常见问题汇总: