我想检查用户设备上当前处于活动状态的div页面,意味着用户当前正在查看哪个页面,并采取相应措施。我有一些div和div内部我有一些列表条目,它们是可点击的,如果点击特定的列表条目,则打开不同的页面。我希望能够知道用户当前在哪个div中,这意味着我想获得用户设备上当前活动的div的id。您可以在下面找到我的应用程序中的示例html。
的index.html:
<div id="first" data-role="page">
...
<li>
<a href="#second" data-transition="slide">First</a>
</li>
...
</div>
<div id="second" data-role="page">
...
<li>
<a href="#first" data-transition="slide">Second</a>
</li>
...
</div>
这只是一个小片段。所以我想检查用户当前是否在id为“first”的div中,或者在id为“second”的div中。如何检查用户当前使用jQuery或JS的哪个div页面?
这对我来说似乎不起作用:
<script>
$(document).on('mobileinit', function() {
$(document).on("pagecontainershow", function(event, ui) {
alert("Current page is: ", $(':mobile-pagecontainer').pagecontainer('getActivePage')[0].id);
});
});
</script>
<script src="jquery-mobile/js/jquery.mobile-1.3.1.min.js" type="text/javascript"></script>
答案 0 :(得分:0)
您可以尝试这样的事情:(未经测试)
$(document).bind('pagecontainershow', function(e, data) {
if ($.mobile.activePage.attr('id') == "first") {
//do something..
}
}
if ($.mobile.activePage.attr('id') == "second") {
//do some other thing..
}
});
答案 1 :(得分:0)
我认为你可以这样做:
$(document).on('mobileinit', function(){
$(document).on( "pagecontainershow", function(event, ui) {
console.log($(':mobile-pagecontainer').pagecontainer('getActivePage')[0].id);
});
});
jQuery.mobile.activePage
:
使用 pagecontainer小部件中的 getActivePage()方法。
当您使用jQM 1.3+时,您可以尝试以下代码:
$(document).on( "pagechange", function( event, ui ) {
console.log($.mobile.activePage[0].id);
});