js中的id选择器的问题

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <div id="demo1">
            demo1111
        </div>
    </body>
</html>

<script type="text/javascript">
    demo1.style.color='red';
</script>

这样不写 document.getElementById("demo1") 也可以的 而且兼容性还挺好

阅读 10.9k
3 个回答

这个最开始只有IE支持,最早兼容性并不好,不过后面chrome和firefox opera等都实现了。

基本的思想就是,如果你设置了ID,则IE会在window中增加一个window.ID的属性,从而你能够直接使用ID。

<body>
    <div id="box"></div>
</body>
<script>
    console.log(window.box); // <div id="box"></div>
</script>

你这样相当于window.id了,变成了全局属性了,乱用全局属性后果应该知道吧,这样写不严谨的,如果demo1 = 'aa', 那么demo1 将变成字符串而不是dom了。

<div id=demo1>
    demo1111
</div>

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题