对于用id可以直接获取对象的问题

今天发现有一个新的发现,

<div id="demo">滴答滴答</div>

在js中使用时可以直接这样使用

demo.innerHTML = "helloworld";

在没有获取通过方法获取demo的情况下,可以直接用的id获取到的元素?
然后从网上查了下,

  • 为什么可以通过id直接访问对象,是因为所有的元素ID都相当于一个保存对象的全局变量。
  • 通过id直接访问对象可能会存在兼容性问题
  • 使用id相当于直接成为了window对象的属性,使用了window.id可以获取,如果一个元素拥有name属性,那么name属性的属性值就会成为window对象的属性名.但这个元素的标签名必须是: a, applet, area, embed, form, frame, frameset, iframe, img, object,其中的一个。
  • 不推荐使用,建议使用document.getElementById 或者querySelector标准的形式获取对象。

猜你喜欢

转载自blog.csdn.net/weixin_43742121/article/details/84542636