缓存页面正在影响 jQuery 个选择器
Cached pages is affecting jQuery selectors
我正在为我的混合应用程序使用 JQM。每个页面都是一个单独的 HTML 文件,JQM 使用 Ajax 加载页面。
每个页面都有一个带菜单栏的页脚。根据某些标准,会显示 2-4 个菜单项。如果我必须删除一些菜单项,我 运行 一个 js 脚本,它以:
var footer = $('#' + activePage +' footer [data-role="navbar"]');
使用此代码设置活动页面:
var activePage; // Global variable
$(document).on( "pagecontainerbeforeshow", function( e, ui ) {
activePage = ui.toPage.prop("id");
});
问题是,在浏览了几页之后,我突然有了 2 个页脚。因此,当我计算 <li>
项的数量时,我得到例如 2 + 4。2 来自第一个页脚,4 来自第二个。
如何避免检索缓存页面?
pagecontainer 小部件有一个方法,getActivePage(),它可以满足您的需求。
所以你可以这样做:
var footer = $("body").pagecontainer( "getActivePage" ).find('.ui-footer [data-role="navbar"]');
那么您就不需要再尝试在页面显示上保存活动页面 ID。
Working DEMO
我正在为我的混合应用程序使用 JQM。每个页面都是一个单独的 HTML 文件,JQM 使用 Ajax 加载页面。
每个页面都有一个带菜单栏的页脚。根据某些标准,会显示 2-4 个菜单项。如果我必须删除一些菜单项,我 运行 一个 js 脚本,它以:
var footer = $('#' + activePage +' footer [data-role="navbar"]');
使用此代码设置活动页面:
var activePage; // Global variable
$(document).on( "pagecontainerbeforeshow", function( e, ui ) {
activePage = ui.toPage.prop("id");
});
问题是,在浏览了几页之后,我突然有了 2 个页脚。因此,当我计算 <li>
项的数量时,我得到例如 2 + 4。2 来自第一个页脚,4 来自第二个。
如何避免检索缓存页面?
pagecontainer 小部件有一个方法,getActivePage(),它可以满足您的需求。
所以你可以这样做:
var footer = $("body").pagecontainer( "getActivePage" ).find('.ui-footer [data-role="navbar"]');
那么您就不需要再尝试在页面显示上保存活动页面 ID。
Working DEMO