<html>
<style>
#myA {
height: 300;
width: 300;
background: green;
}
</style>
<body>
<script language="JavaScript">
document.getElementById('myA').onmousedown = function() {
var a = document.getElementById('myA');
console.log(a);
}
</script>
<div id="myA"></div>
</body>
</html>
请问,为什么上面的代码不起作用?当我想编写console.log时,我什么也得不到,null值。
答案 0 :(得分:3)
当您的脚本运行时,myA
元素尚不存在。之一:
window.onload
$()
。答案 1 :(得分:0)
您必须在该div下面编写脚本。因为div尚未加载。或者您可以在文档准备就绪时编写函数和函数调用。
答案 2 :(得分:0)
将代码包装在函数中并将其附加到window.onload事件,如下所示:
window.onload = function(e) {
document.getElementById('myA').onmousedown = function() {
var a = document.getElementById('myA');
console.log(a);
};
};
正如其他人所说,这是因为你试图将一个事件附加到一个尚未加载的元素上。