0

在 jqm 我有这样的东西

<li><a href="#page1" id="cats" class="loadPage">cats</a></li>
<li><a href="#page1" id="dogs" class="loadPage">dogs</a></li>

Page1 是一个动态页面,应该根据我按下和使用的链接按钮来加载它的内容

$(document).on('pagebeforeshow', '#page1', function(event, data){
    do something here with either cats or dogs
});

现在我如何确定这里使用了什么链接?我可以使用 sessionStorage 或者一个

$('.loadPage').click(function(){
    $(this).attr('id').blablabla
})

但这对我来说似乎不对。我确信答案就在我面前,但我似乎无法绕过它。

有任何想法吗?

4

2 回答 2

1

您可以在单击时存储idin#page1的属性:dataloadPage

$(document).on("pageinit", "#page0", function () {
    $(this).on("click", ".loadPage", function (e) {
        e.preventDefault();
        $("#page1").data("id", this.id);
    });
});

然后,在 jQM 将您重定向到 之后#page1,检查存储的data

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

演示:http: //jsfiddle.net/hungerpain/wN2L9/

于 2013-06-25T17:34:20.287 回答
0

比较id:

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

附带说明一下,您也可以使用$(this).attr('id'),但最好尽可能使用纯 JavaScript。

于 2013-06-25T17:35:16.327 回答