前端时间在做一个项目,公司之前的框架采用了jquerymobile这个框架,在开发过程中,采用了chrome浏览器来测试运行。现叙述如下问题:
在通过a标签herf去跳转页面时出现了页面跳转了过去,地址栏地址已经变化,但是页面仍显示为上一页面,需要刷新页面才能看到,同时在手机上测试也是同样的效果,花费了大量时间也没有定位到问题所在,最后通过对比与其他页面的不同,发现在a标签里会多出一个data-ajax="false",加上后果然好了,但是不知道其原因,今天看到这篇文章才知道原因。
Jquery Mobile支持所有标准的html格式,为了让体验更加流畅,Jquery Mobile会把同一个域下的所有指向页面的链接都会自动转为ajax请求,并且用动画的转场效果实现切换,指向别的域的链接或者是含有 rel="external", data-ajax="false" 属性的链接以及含有target属性的链接不会通过ajax加载,页面会整体被刷新。
附上原文链接