HTML
<div class="ativo37 and many other classes"></div>
<div class="another classes here with ativo1"></div>
<div class="here ativo9 and more two or three"></div>
JS
$("div[class^='ativo']").on("click", function(){
$(this).removeClass("^='ativo'"); // How to achieve it?
});
我可以代替
.removeClass("^='ativo'");
怎么办?JSFiddle
最佳答案
.removeClass()
接受一个用于删除类的函数,并接受索引和旧的CSS值:
您可以删除以所需名称开头的类名称,并使用以下方法保留现有名称:
$("div[class*='ativo']").removeClass (function (index, css) {
return (css.match (/(^|\s)ativo\S+/g) || []).join(' ');
});
Working Demo