如何在点击时编写运行javascript函数的不可点击链接?

时间:2013-07-13 22:55:04

标签: javascript html

我知道之前已回答过这个问题,在这里: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变量。

2 个答案:

答案 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.
     }
}