我在使用 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
});
});
这是我希望从中删除类定义的部分的 HTML 标记
<div id="1" class="span3 well homeBox opaque btn-purple">
<span class="siteBoxContent">What do we do?</span>
</div>
这是我在 Webkit 错误控制台中调试时遇到的错误
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 可能会在删除具有背景图像、颜色甚至过滤器属性的类时遇到问题。如果您需要更多信息,请告诉我。在此先感谢您的帮助。