如果HTML元素有更多类,例如:
class =“red blue white”
我有一个函数,它使用Reg Exp test()方法和最终添加类的函数来检查元素是否具有类。
下面是删除类的函数,一切正常,只是我不明白为什么最后一行的文字表达式/ $ /与“$”不一样。
如果我删除除了最后一个类名之外的任何其他名称,“$”将替代/ $ /。如果删除最后一个类,它将在关闭类属性的引用之前保留空格。
这是功能:
var removeClass = function(targetById, theClass)
{
var pattern = new RegExp("(^| )"+ theClass + "( |$)");
if(hasClass(targetById, theClass))
{
targetById.className = targetById.className.replace(pattern, "$1");
targetById.className = targetById.className.replace(/ $/, "");
}
};
var heading = document.getElementById("heading");
removeClass(heading, "white");