54

我在一个div中有一个gridview ..我想使用jquery从div的底部滚动到div的顶部..任何建议..

<div id="GridDiv">
// gridview inside..
</div>

我的 gridview 将在其中包含自定义分页生成的链接按钮...我将从链接按钮的底部滚动到 div 的顶部单击...

protected void Nav_OnClick(object sender, CommandEventArgs e)
    {
        LinkButton lb1 = (LinkButton)sender;
        //string s = lb1.ID;
        ScriptManager.RegisterClientScriptBlock(lb1, typeof(LinkButton), 
 "scroll", "javascript:document.getElementById('GridDiv').scrollTop = 0;", true);

在javascript的地方,我将调用jquery函数......任何建议......

编辑:

就像每个用户页面的 Stackoverflow 问题...当更改页面编号时,它会以平滑的效果滚动到顶部...我想实现这一点...

4

7 回答 7

190

以下是您可以使用 jquery 执行的操作:

$('#A_ID').click(function (e) { //#A_ID is an example. Use the id of your Anchor
    $('html, body').animate({
        scrollTop: $('#DIV_ID').offset().top - 20 //#DIV_ID is an example. Use the id of your destination on the page
    }, 'slow');
});
于 2012-01-11T00:30:02.070 回答
59

或者,对于更少的代码,在您的点击中放置:

setTimeout(function(){ 

$('#DIV_ID').scrollTop(0);

}, 500);
于 2015-09-22T16:08:08.233 回答
4

你可以只使用:

<div id="GridDiv">
// gridview inside...
</div>

<a href="#GridDiv">Scroll to top</a>
于 2010-03-03T06:03:28.213 回答
4

特别感谢 Stoic

   $("#miscCategory").animate({scrollTop: $("#miscCategory").offset().top});
于 2019-04-23T04:24:22.537 回答
2

这是我在单击按钮时滚动到顶部的解决方案。

$(".btn").click(function () {
if ($(this).text() == "Show options") {
$(".tabs").animate(
  {
    scrollTop: $(window).scrollTop(0)
  },
  "slow"
 );
 }
});
于 2020-04-29T05:51:28.440 回答
1

我不知道为什么,但你必须添加一个 setTimeout 至少对我来说 200 毫秒:

setTimeout( function() {$("#DIV_ID").scrollTop(0)}, 200 );

用 Firefox / Chrome / Edge 测试。

于 2017-02-11T12:59:04.147 回答
0

使用以下功能

window.scrollTo(xpos, ypos)

这里 xpos 是必需的。沿 x 轴(水平)滚动到的坐标,以像素为单位

ypos 也是必需的。沿 y 轴(垂直)滚动到的坐标,以像素为单位

于 2017-09-06T11:53:02.433 回答