2011-03-24 121 views
0

我有,如果選擇一個選項卡,檢查聲明:removeClass和addClass不工作

$('#social_edit_pannels').tabs({ 
select: function(event, ui) { 
var theSelectedTab = ui.index; 

if (theSelectedTab == 0) { 
$('ul li.ep-messages').removeClass('ep-messages').addClass('ep-messages-click'); 
$('ul li.ep-friends').removeClass('ep-friends-click').addClass('ep-friends'); 
} 
else if (theSelectedTab == 1) { 
$('ul li.ep-friends').removeClass('ep-friends').addClass('ep-friends-click'); 
$('ul li.ep-messages').removeClass('ep-messages-click').addClass('ep-messages'); 
} 
    } 
}); 

正在發生的事情是,只有remove'ing的第一個語句並添加類從每一個if語句的工作原理。

例如,當我運行該腳本,它的行爲像它會只有這樣的:

if (theSelectedTab == 0) { 
$('ul li.ep-messages').removeClass('ep-messages').addClass('ep-messages-click'); 
} 
else if (theSelectedTab == 1) { 
$('ul li.ep-friends').removeClass('ep-friends').addClass('ep-friends-click'); 
} 

第二條語句從每個if ...不起作用。 也許它不知道類是否存在?

有什麼想法?

回答

1
$('ul li.ep-friends').removeClass('ep-friends-click').addClass('ep-friends'); 

$('ul li.ep-friends')目前尚不具備ep-friends類,這就是爲什麼它沒有找到 你必須使用,而不是爲:第二個'ul li.ep-friends'

相同的解釋另一種選擇。

+0

偉大的觀察,我發現我的方式使用.hasClass – Patrioticcow 2011-03-25 00:08:01