我有一个两页的jQuery移动应用程序,并在init函数中,以下代码..
调用init函数
$(document).on('pageinit', function(){
MyPages.init();
});
init: function() {
$('td[id$="drops"]').each(function() {
console.log("Element: " + $(this).attr('id'));
}),
};
我在第一页中有与上面匹配的元素,例如'#early_drops','#content_drops'等。第2页上不存在这些元素,但是当页面2加载时,元素会显示在控制台中就像第1页加载时一样。我在这里错过了什么?
非常感谢,
-Adam vonNieda
答案 0 :(得分:0)
默认情况下,jQuery使用AJAX将页面加载到现有页面中,以允许动画过渡。如果你不想要这个,你只需要'关闭'AJAX加载。
请参阅此处的说明:http://view.jquerymobile.com/1.3.2/dist/demos/widgets/links/
指向其他域或具有rel =“external”,data-ajax =“false”或目标属性的链接将不会加载AJAX。相反,这些链接将导致整页刷新而没有动画过渡。两个属性(rel =“external”和data-ajax =“false”)具有相同的效果,但是在链接到另一个站点或域时应使用不同的语义:rel =“external”,而data-ajax =“ false“对于简单地选择域中的页面通过AJAX加载非常有用。
默认情况下,您还可以使用全局配置在整个应用中禁用AJAX:http://api.jquerymobile.com/global-config/