微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么在匿名函数中更改DOM属性不起作用?

如何解决为什么在匿名函数中更改DOM属性不起作用?

|
<html>
    <head>
        <title>test</title>
        <script type=\"text/javascript\">
            function start(){
                document.getElementById(\"first_div\").onclick = function(){
                    document.getElementById(\"another_div\").style.color = \"red\";                 
                };
            }
        </script>   
    </head>
    <body onload=\"start()\">
        <div id=\"first_div\">first</div>
        <div id=\"anoter_div\">second</div>
    </body>
</html>
当我单击first_div时,发生错误
TypeError: Result of expression \'document.getElementById(\"another_div\")\' [null] is not an object.
知道为什么这不起作用吗? 谢谢。     

解决方法

        您打错了字。更改:
document.getElementById(\"another_div\")
                             ^
至:
document.getElementById(\"anoter_div\")
或者,您可以更改
div
的名称,可能更好:
<div id=\"anoter_div\">second</div>

<div id=\"another_div\">second</div>
             ^
方法
document.getElementById(..)
无法找到该元素,并返回null,这说明了您得到的错误。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。