我知道之前已回答过这个问题,在这里:javascript:void(0) or onclick="return false" for <a> - which is better?
然而,该解决方案对我不起作用。
以下是适用的代码:
HTML:
<a id="Skip">Skip</a>
使用Javascript:
var Skip = document.getElementById("Skip");
Skip.addEventListener('click', reloadPage(), true);
function reloadPage() {
window.location.href = "play.php";
}
当我点击“跳过”时,没有任何反应。我想保留window.location.href
重新加载方法,因为我想向它添加$ _GET变量。
答案 0 :(得分:6)
Skip.addEventListener('click', reloadPage(), true);
// ^^-------------------
应该是:
Skip.addEventListener('click', reloadPage, true);
您希望回调为reloadPage
而非reloadPage
返回。
答案 1 :(得分:2)
基本上你有把函数指针传递给addEventListener。因此,当点击发生时,它会调用该方法。你不想调用没有返回任何内容的方法
例如:
Skip. addEventListener('click', reloadPage, true);
你也可以像你所写的一样,但只有你的方法返回另一个函数
例如
Skip. addEventListener('click', reloadPage(), true);
function reloadPage() {
return function(){
// do something interesting.
}
}