0

我無法使用Jquery removeClass功能來禁用某個類。下面Jquery RemoveClass不能用於引導按鈕

.btn-purple 
{ 
    background-color: #F1B2E1; 
    background-image: -moz-linear-gradient(top, #F1B2E1, #E986D0); 
    background-image: -ms-linear-gradient(top, #F1B2E1, #E986D0); 
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#F1B2E1), to(#E986D0)); 
    background-image: -webkit-linear-gradient(top, #F1B2E1, #E986D0); 
    background-image: -o-linear-gradient(top, #F1B2E1, #E986D0); 
    background-image: linear-gradient(top, #F1B2E1, #E986D0); 
    background-repeat: repeat-x; 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F1B2E1', endColorstr='#E986D0', GradientType=0); 
    border-color: #0055cC#0055cC#003580; 
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); 
    filter: progid:dximagetransform.microsoft.gradient(enabled=false); 
} 
.btn-purple:hover, 
.btn-purple:active, 
.btn-purple.active, 
.btn-purple.disabled, 
.btn-purple[disabled] { 
    background-color: #E986D0; 
} 

類定義給出了在javascript文件我有以下

$(function(){ 
    $("#1").click(function(){ 
     $("#1").removeClass("btn-purple", 1000); 
     return false 
    }); 

}); 

這裏是因爲我想從

<div id="1" class="span3 well homeBox opaque btn-purple"> 
    <span class="siteBoxContent">What do we do?</span> 
</div> 
刪除類定義了部分的HTML標記

這裏是我在Webkit Error Console中調試時遇到的錯誤

TypeError: 'undefined' is not an object (evaluating 'fx.end[0]')  jquery.effects.core.js:32 

如果我嘗試刪除像'homeBox'這樣的類,那麼removeClass可以正常工作。下面是homeBox類定義的定義

.homeBox 
{ 
    position:relative; 
    width:26.666666666667%; 
    height:200px; 
} 

所以我猜jQuery的可能有去除具有背景圖片,顏色,甚至過濾器屬性類的問題。如果您需要更多信息,請告訴我。在此先感謝您的幫助。

回答

1

用途:

$("#1").removeClass("btn-purple"); 

相反的:

$("#1").removeClass("btn-purple", 1000); 

,因爲沒有爲它提供第二個參數和1000不作任何存在感。它

兩種可能的簽名是:

.removeClass([className]) 
.removeClass(function(index, class)) 

更多信息:

+0

我正在使用removeClass的jqueryui定義。它在此鏈接處定義[鏈接](http://jqueryui.com/demos/removeClass) –

0

您使用的函數簽名不存在:

removeClass("classname", integer) // WRONG 

有在JQuery中AFAIK沒有這種可能性,你可以這樣做:

.removeClass([className]) 
.removeClass(function(index, class)) // from version 1.4 

我不明白是什麼1000代表,但我敢打賭,刪除它應該解決的問題。

+0

1000代表從一個類到另一個類的過渡時間。這個定義是在removeClass的jqueryui類定義中定義的,可以在這裏找到(http://jqueryui.com/demos/removeClass/) –