不是为元素可能具有的每个类单独调用$(“#item”).removeClass(),而是可以调用一个函数来从给定元素中删除所有CSS类吗?
jQuery和原始JavaScript都可以工作。
不是为元素可能具有的每个类单独调用$(“#item”).removeClass(),而是可以调用一个函数来从给定元素中删除所有CSS类吗?
jQuery和原始JavaScript都可以工作。
当前回答
最短的方法
$('#item').removeAttr('class').attr('class', '');
其他回答
您可以尝试:
$(document).ready(function() {
$('body').find('#item').removeClass();
});
如果您必须在没有类名的情况下访问该元素,例如,您必须添加一个新类名,则可以执行以下操作:
$(document).ready(function() {
$('body').find('#item').removeClass().addClass('class-name');
});
我在项目中使用该函数在HTML生成器中删除和添加类。
只需将实际DOM元素的className属性设置为“”(无)。
$('#item')[0].className = ''; // the real DOM element is at [0]
其他人说,调用removeClass就行了——我在GooglejQueryPlayground上测试了这一点:http://savedbythegoog.appspot.com/?id=ag5zYXZlZGJ5dGhlZ29vZ3ISCxIJU2F2ZWRDb2RlGIS61gEM ... 它起作用了。所以你也可以这样做:
$("#item").removeClass();
当然
$('#item')[0].className = '';
// or
document.getElementById('item').className = '';
我也有类似的问题。在我的例子中,在禁用的元素上应用了aspNetDisabled类,所有禁用的控件都有错误的颜色。所以,我使用jQuery删除了我想要的每个元素/控件上的这个类,现在一切都正常了,看起来很好。
这是我删除aspNetDisabled类的代码:
$(document).ready(function () {
$("span").removeClass("aspNetDisabled");
$("select").removeClass("aspNetDisabled");
$("input").removeClass("aspNetDisabled");
});
$('#elm').removeAttr('class');
属性“class”将不再出现在“elm”中。