学习jquery mobile的时间不是很长,在学习的过程当中也遇到了很多令人抓狂的问题,在网上搜索问题答案的时候发现,现在关于jquery mobile的文章还不是很多,所以,我也是一边学习,一边摸索,今天我就把我遇到的一些问题和解决方法在这里总结一下,希望能够帮助一些朋友。
1、
问题:动态添加一些dom元素后,css样式没有了?
解决:如果是添加的li列表,你需要在添加完以后,在它的父节点加上.listview('refresh'),例如:$('ul').html('<li>aaa</li>').listview('refresh');
如果不是列表的话,需要用.trigger('create');例如:$('<div>').html('<p>123</p>').trigger('create');
2、
问题:用a标记的href链接跳转到目的页面时,绑定的$(document).ready()不执行,需要刷新页面才能执行?
解决:jquery mobile页面跳转是ajax跳转,所以$(document).ready()是不执行的,如果想用a标记跳转过来执行一些函数的话有两种方法:
(1)、用js的window.location.href=url跳转,或者在a标记里写rel="external",这样页面就脱离了jquery mobile框架,到了一个新的页面;
(2)、给目的页面的page加一个id,例如:indexPage,给indexPage绑定pageinit事件,$('#indexPage').live('pageinit',function(event){});就可以了,其实jquery mobile页面的跳转就是不同page直接的切换
3、问题:跳转到新的页面,新页面的js,css不加载
解决:这个问题是因为jquery mobile是ajax跳转,在页面跳转的时候不再加载新的js,css,我目前也没有找到很好的解决方法,我是把所有的js都放到了一个公共的js里面,在公共的js里面给不同的page绑定不同的事件。
由于时间原因,就先写到这里,大家要是遇到了什么问题可以给我提问,咱们大家可以一起学习讨论。