单击锚点时的HTML滚动位置

时间:2009-05-02 04:07:10

标签: jquery html

我有一个MVC应用程序并使用JQuery。

我有像我这样设置的锚

<a href="#" id="addcomment">Add Comment</a>

然后点击锚点时我就这样做了

$('#addcomment').click(function() {
    $('#divComments').slideDown(2000);
});

问题是点击锚点时 浏览器滚动到窗口顶部 立即点击链接 然后div滚动

如何阻止这种情况发生?

马尔科姆

2 个答案:

答案 0 :(得分:3)

您必须在点击功能的底部添加return false;,以防止发生默认链接事件操作。在这种情况下,默认链接事件将转到页面顶部,因为#的href告诉浏览器转到顶部。所以它看起来像这样:

$('#addcomment').click(function() {
    $('#divComments').slideDown(2000);
    return false;
});

虽然这也是可以接受的:

$('#addcomment').click(function(e) {
    $('#divComments').slideDown(2000);
    e.preventDefault();
});

Documentation here

答案 1 :(得分:3)

使用命名锚点有什么问题?

无需javascript的开销。