0
當我點擊下面的列表項(li)時,我將它的id從sprite-heart改爲sprite-stars。這很好。用jquery更改列表項的id屬性
但是,一旦我再次單擊李,它會處理像它是精靈心臟的功能,但現在該功能應該繞過列表項目是精靈星。
我該如何改變這種情況?
<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){
}
});
}
更改ID屬性不可靠的跨瀏覽器的工作IIRC –
作爲一個側面說明:元素必須在頁面上唯一的ID,動態變化的IDS增加的元素結束了風險具有相同的ID,這反過來是無效的HTML和有不需要的副作用。如果您想指示狀態或在元素上指示其他內容,請使用類,自定義屬性或'$(selector).data'。 – Nope