Jquery mobile 在pagebeforeshow上获取引用的链接id

Jquery mobile 在pagebeforeshow上获取引用的链接id,jquery-mobile,Jquery Mobile,在jqm中,我有这样的东西 <li><a href="#page1" id="cats" class="loadPage">cats</a></li> <li><a href="#page1" id="dogs" class="loadPage">dogs</a></li> 现在我如何确定这里使用了什么链接? 我可以使用会话存储或者 $('.loadPage').click(function(){

在jqm中,我有这样的东西

<li><a href="#page1" id="cats" class="loadPage">cats</a></li>
<li><a href="#page1" id="dogs" class="loadPage">dogs</a></li>
现在我如何确定这里使用了什么链接? 我可以使用会话存储或者

$('.loadPage').click(function(){
    $(this).attr('id').blablabla
})
但我觉得这不太对。我确信答案就在眼前,但我似乎无法回避


有什么想法吗?

单击
加载页面
,您可以将
id
存储在
#page1
数据
属性中:

$(document).on("pageinit", "#page0", function () {
    $(this).on("click", ".loadPage", function (e) {
        e.preventDefault();
        $("#page1").data("id", this.id);
    });
});
然后,在jQM将您重定向到
#page1
后,检查存储的
数据

$(document).on("pagebeforeshow", "#page1", function () {
    alert($(this).data("id")); 
    // you can do anything with this id
});
演示:

比较id:

if(this.id==='cats')
{
  //do something here
}

另一方面,您也可以使用
$(this).attr('id')
,但最好尽可能使用纯JavaScript

$('.loadPage')。在('click',function(){if($(this).attr('id')='cats'){在#page1;$.mobile.changePage('#page1');}上进行修改太棒了。正是我需要的:)
if(this.id==='cats')
{
  //do something here
}