此代码是否适用于其他任何人。添加事件监听器的时间最长,但是没有用。
<head>
<title>Page Title</title>
<script>
window.onload = init();
function init() {
svg = document.getElementsByTagName('svg');
svg[0].addEventListener('click', mouseClick, false);
}
function mouseClick() {
alert('mouseClicked');
}
</script>
</head>
<body>
<svg><rect x="100" y="100" width="200" height="75"/></svg>
</body>
对于我所参与的每个项目,我都必须使用另一种方法。我是否在使用“addEventListener”做错了什么?或者是什么?
答案 0 :(得分:1)
init()
调用该函数,除非它返回一个函数,否则这将无效。你需要做的是传递函数,而不是它的返回值:
window.onload = init;
答案 1 :(得分:1)
你的问题是:
window.onload = init();
通过包含括号,您将在该点调用该函数,因此您正在做的是将对init的调用结果分配给window.onload。 你需要:
window.onload = init;
将函数init赋值给window.onload。