繁体   English   中英

我为什么会收到“无法在ahint设置null的属性'innerHTML'的信息”

[英]Why am I getting “Cannot set property 'innerHTML' of null at ahint”

我试图用JS编写一些代码,但是,当我将鼠标悬停在鼠标上时,会看到错误“无法在ahint设置null的属性'innerHTML'”。 我已经读到可能会发生这种错误,因为Chrome甚至在创建Div之前都会编译/渲染JS代码。 因此,我将其放在底部进行检查。 不幸的是,把它放在最底下并不能解决我的问题。 也许更有经验的人会理解。

 var hint = "Hello"; function ahint() { document.getElementById('#randomhint').innerHTML = hint; } 

  <div id="randomhint" onmouseover="ahint()">!</div> <script type="text/javascript" src="main.js"></script> </body> 

从标识符中删除#

var hint = "Hello";

function ahint()
{
    document.getElementById('randomhint').innerHTML = hint;
}

您可能已经在使用jQuery或类似库的代码中看到了# ,如$('#randomhint') 这样,这些库就知道您的意思是使用id而不是标签名。

但是,在使用getElementById (属于“原始” JavaScript的一部分)时,您不需要(也不能使用)它。 使用getElementById ,只有实际的id值( "randomhint" )属于那里。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM