Javascript 这个jQuery代码在所有版本中都是一致的吗?
我在某个地方读到过,当您在变量中捕获jQuery对象时,可以说:Javascript 这个jQuery代码在所有版本中都是一致的吗?,javascript,jquery,dom,Javascript,Jquery,Dom,我在某个地方读到过,当您在变量中捕获jQuery对象时,可以说: div = $("#someDiv"); 将捕获该元素的屏幕截图,因此如果您执行以下操作: div2 = $("#someDiv"); // another handle div2.css('background-color', 'rgb(12,75,54)'); 然后做: div.css('background-color'); // should NOT output "rgb(12, 75, 54)" 然而,这就是所发
div = $("#someDiv");
将捕获该元素的屏幕截图,因此如果您执行以下操作:
div2 = $("#someDiv"); // another handle
div2.css('background-color', 'rgb(12,75,54)');
然后做:
div.css('background-color'); // should NOT output "rgb(12, 75, 54)"
然而,这就是所发生的事情,div
句柄知道发生在元素上的任何更改。所以我在想:也许这种行为被引入到了新版本的jQuery中?所有jQuery版本都是这样吗?即使div=$(“#someDiv”)代码>创建不同于div2=$(“#someDiv”)的jQuery对象代码>这些jQuery对象中的实际dom元素仍然是相同的
其中只能有一个,对象作为引用传递,而不是复制它们
在由div
表示的dom节点中发生的任何事情都将反映在div2
的dom节点中……它们是一个相同的事实总是如此。目前没有“快照”,它是对DOM中该元素的引用。请注意,某些浏览器可能返回rgba
。它们处理颜色的方式并不总是与您设置颜色的方法相匹配