将类添加到元素时出现奇怪的chrome或jquery行为

时间:2017-10-15 00:27:53

标签: javascript jquery html css google-chrome

当我在Chrome中打开elements tab时(版本61.0.3163.100(官方版本)(64位))

我明白了 -
<img id="marked" src="marked.png" class="ltmargin">

然而,当我在$("#marked")[0]中写console tab时 我明白了 -

<img id="marked" src="marked.png" class="ltmargin hidenow">

此外,$("#marked").length1

hidenow类应该隐藏图像(display: none),并且对于在html文件中添加hidenow的元素工作正常。页面上的图像可见。

在我的js文件中,我使用jquery hidenow#marked添加到.addClass(),但它并没有显示在html中!

之前有没有遇到过这个?我该怎么调试呢?任何帮助表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:0)

问题是#marked的id之前实际上是#moremark并且在js中被更改,在它不起作用之后添加了一个类。所以我这样做了 -

$("#moremarked").addClass("hidenow");
// change id after adding the class
$("#moremarked").prop("id", "marked");

一切正常!