我想添加和刪除在沒有結果的點擊事件的類。 我正在使用jquery 1.4編寫Drupal 7,書籤鏈接由flag模塊生成。的jQuery .live和.delegate()addClass與removeClass動態問題
我會解釋我需要做什麼。 我有一塊ØHTML代碼:
<div class="container"><a class="bookmark">Bookmark</a></div>
<div class="container"><a class="flag bookmark">Bookmark</a></div>
現在,當您點擊「書籤」,自動(由模塊標誌)的鏈接的類改變(它通過AJAX改變和鏈接將重建)
<div class="container"><a class="flag bookmark">Bookmark</a></div>
<div class="container"><a class="flag bookmarked">Bookmarked</a></div>
我想要做的就是給一個類的容器,所以我寫了
$('.bookmarked').click(function(){
$(this).parent().removeClass('this-bookmarked');}
});
$('.bookmark').click(function(){
$(this).parent().addClass('this-bookmarked');}
});
這工作第一,它並不像一個「切換」工作。
我試着使用.live(),但沒有結果,它不會在所有的工作。
$("a.flag").live({
click: function() {
if ($(this).parent().hasClass("this-bookmarked")) {
$(this).parent().removeClass('this-bookmarked');
} else {
$(this).parent().addClass('this-bookmarked');
}
return false;}
});
我想這也
$("a.flag").live('click', function() {
if ($(this).parent().hasClass("this-bookmarked")) {
$(this).parent().removeClass('this-bookmarked');
} else {
$(this).parent().addClass('this-bookmarked');
}
return false;}
});
,以確保我用.delegate()太
jQuery(function() {
jQuery(document).delegate("a.flag", "click", function() {
if (jQuery(this).hasClass("this-bookmarked")) {
jQuery(this).parent().removeClass('this-bookmarked');
} else {
jQuery(this).parent().addClass('this-bookmarked');
}
return false;}
);
});
兩個.live()和.delegate()不要」即使我想提醒一些文本,也不會給我任何結果和任何錯誤。難道我做錯了什麼?
我應該使用其他的jQuery API嗎?
非常感謝
你可以使用.toggleClass() – 2012-03-02 15:03:42
toggleClass()工程的第一個動作,如果我再次點擊它不工作,因爲你點擊鏈接之後將通過AJAX – 2012-03-02 15:19:02