var divfoo=document.getElementById("foo");
divfoo.className=" css-class css-class2 ";
divfoo.className=divfoo.className.replace(" css-class2 ", "");
以上代码有效。但是我想对使用replace方法的上面代码的最后一行进行更改。我不想像上面那样编写代码,而是想知道为什么它在下面写的时候不起作用。
var divfoo=document.getElementById("foo");
divfoo.className=" css-class css-class2 ";
divfoo.className.replace(" css-class2 ", "");
为什么要分配给" divfoo.className"当将替换方法应用于相同的" divfoo.className"时,为什么我们不能像上面代码一样直接应用方法呢?
因为这个我应该讨厌javascript不符合逻辑吗?
enter code here
答案 0 :(得分:1)
Element.className
是类HTML属性的简单字符串表示。
String.replace
方法不会更改被调用的源字符串,只返回替换过程的结果。
如果您想要更多“逻辑/功能”方法,请查看Element.classList界面,即remove
方法。