当我点击下面的列表项目(li)时,我将其id从sprite-heart更改为sprite-stars。这很好用。
但是一旦我再次点击它,它就像处理sprite-heart一样处理函数,但是当列表项是sprite-stars时,应该绕过函数。
我该如何更改?
<li><a class="navit" id="sprite-heart" title="Love this webcam! Add to my personal webcam page" href="#"><span class="love">Love this webcam</span></a></li>
$("#sprite-heart").click(function() {
addfavcam();
});
function addfavcam()
{
$.ajax({
url: '/v3/ajax/addfavourite.php',
type: 'POST',
data: {id: <?php echo $cam_id; ?>, usr: 'x<?php echo $user_id; ?>'},
success: function(responseText){
$('#sprite-heart').attr('id','sprite-stars');
$('#sprite-heart,#sprite-stars').attr('title','My favourite');
},
error: function(responseText){
}
});
}
答案 0 :(得分:2)
您需要取消绑定事件,而不仅仅是更改ID。只需添加
$("#sprite-heart").click(function() { $(this).unbind('click'); ... }