如题,用js改变了层DIV的样式id或者class,原先的特性,比如单击事件,鼠标悬浮事件会继承原先的样式么?
不会,样式是即时计算的,当你的div的class改变时,这个div以及相关的部分都会reflow,重新计算样式。
所以原先的伪类在div重新计算后失去作用了,如果是事件里面改变div的class,同样会导致div的reflow,始终会保证div的样式是正确的。
例“<div id=”div“ onclick="d1()"> </div> 改变id 后应变为<div id=”div2“>?还是<div id=”div2“ onclick="d1()"> 刚在做个页面。一怒之下直接用display。世界清净了,不过还是想搞清楚改变id样式到底都有什么改变了
@初阳暮雪: id只是你的div的属性,改变属性,不会改变你这个div所绑定的事件的,所以原来绑定的事件依然存在。
但是有些属性会触发CSS计算,会导致样式重新计算和渲染。
还有就是改变ID,会导致你的JS里面所有用到这个ID的语句语句失效。
所以一般我们不改变ID,ID就是标签的唯一标识。