jQuery Address找出单击了哪个元素

时间:2011-08-21 13:23:52

标签: jquery jquery-address

我使用jquery.address()通过ajax加载我的页面:

$。address.state('')。init(function(){

// Initializes the plugin
$('#menu a').address();
$('#nextprev a').address();

}).change(function(event) {

// Loads the page content and inserts it into the content area
$.ajax({
    url: $.address.state() + event.path,
    error: function(XMLHttpRequest, textStatus, errorThrown) {
      console.log(XMLHttpRequest.responseText);
    },
    success: function(data, textStatus, XMLHttpRequest) {
      $('title').html($('title', data).html());
      $.address.title(/>([^<]*)<\/title/.exec(data)[1]);
      $('#content').html($('#content', data).html());
      loadstuff();
      startAnimation();
    }
});

var startAnimation = function(data) {
... some animation going on here
});

目前,代码调用ajax加载下一页后,下一页将通过startAnimation()进入。到目前为止,这确实很好。

但是我在#nextprev中有#next和#prev元素。我想要地址找出它们中的哪一个被点击,然后加载一个不同的函数(即startAnimation2())。

1 个答案:

答案 0 :(得分:0)

你需要在标记属性(或隐藏的输入/本地pc内存)中定义当前的动画索引,如:

<input type="hidden" value="3" name="current-animation" />

然后获取值:

$('input[name="current-animation"]').val();

替代标记:

<div id="animation-data" data-current="3" data-animation="animation-1"></div>