如何在點擊時使用jQuery進行條件交換。如果某個類存在,則將其交換爲另一個類,例如將交換類「A」更改爲「B」。Swap類w/jQuery
<a href="#" id="clickMe"><span class="A"></span>link</a>
我一直想這一點,但它似乎不工作:
$(this).closest("span").toggleClass("A,B");
我缺少什麼?
如何在點擊時使用jQuery進行條件交換。如果某個類存在,則將其交換爲另一個類,例如將交換類「A」更改爲「B」。Swap類w/jQuery
<a href="#" id="clickMe"><span class="A"></span>link</a>
我一直想這一點,但它似乎不工作:
$(this).closest("span").toggleClass("A,B");
我缺少什麼?
.closest()
上升到DOM樹,而不是下降。使用.children()
或.find()
。
$(function()
{
$('#clickMe').click(function()
{
$(this).children('span').toggleClass('a b');
return false; // don't follow the link
});
});
.toggleClass()
期望多個類名由空格分隔,而不是逗號。
如果只想類交換一次發生:。
$(function()
{
$('#clickMe').click(function()
{
var $span = $(this).children('span:first');
$span.toggleClass('a b', $span.hasClass('a'));
return false; // don't follow the link
});
});
$(this).closest("span").removeClass("A").addClass("B");
編輯:上面會強行類B代替類A我覺得你要尋找的是每個代碼運行時間A和B之間切換,是否正確?請嘗試:
$(this).closest("span").toggleClass("A B");
哦,它可以是圓頂多一次。謝謝 – santa