我使用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())。
答案 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>