Jquery - .click()不会滚动页面

时间:2011-02-08 23:50:51

标签: javascript jquery unobtrusive-javascript

我即将在jQuery上创建一个函数:

$(document).ready(function() {
    $('#header_rules').click(function() {
      // here i define myFunction()
    });
});

<a id="header_rules" href="#">RULES</a>

而不是

 <a id="header_rules" href="#" onClick="myFunction();return false">RULES</a>

但我不知道在有人点击链接后如何使用jQuery阻止滚动到页面顶部。

事实上,我将完全摆脱本机JS,这可能会产生一些麻烦(这就是为什么我使用像jQuery这样的JS框架)。

有任何帮助吗?干杯

3 个答案:

答案 0 :(得分:6)

调用e.preventDefault();,其中e是点击处理程序的第一个参数:

$(document).ready(function() {
    $('#header_rules').click(function(e) {
        e.preventDefault();
        // here i define myFunction()
    });
});

<a id="header_rules" href="#">RULES</a>

答案 1 :(得分:3)

以下内容也有效,但我认为它会停止该项目的其他点击事件。

(document).ready(function() {
    $('#header_rules').click(function() {
      // here i define myFunction()
    return false;
    });
});

答案 2 :(得分:2)

ThiefMaster说的是什么,你也可以在你的函数中包含return false;而不是内联。

相关问题