自动滚动到页面底部

时间:2012-11-20 11:46:50

标签: c# javascript jquery code-behind

我有一个代码隐藏文件,其中包含:

Response.Redirect(Request.RawUrl);

我更新了数据库中的内容。 (存储主题评论时)

我希望在触发响应时将页面自动滚动到页面底部。 有人可以告诉我怎么样?

6 个答案:

答案 0 :(得分:1)

如何在新评论中添加an anchor

<a name="NewComment">The comment</a>

然后让你的重定向指向那个锚

Response.Redirect(Request.RawUrl + "#NewComment");

这应该会让您的浏览器滚动到该锚点

答案 1 :(得分:1)

使用javascript可以滚动到页面底部。下面是javascript代码来做同样的事情。请在正文标记结束前将以下代码放在页面末尾。

<script>
window.scrollTo(0, document.body.clientHeight);
</script>

答案 2 :(得分:0)

滚动到页面底部是客户端而不是服务器端。 C#是服务器端。为了滚动,你必须在页面上添加一些javascript来为你做。

通常,这是通过以下方式实现的,编写了一个查看URL的javascript例程。如果网址中存在某些特定信息(例如&amp; scroll2bottom = true),则javascript会执行该操作。这也可以让您滚动到特定的页面元素。

答案 3 :(得分:0)

我使用这个功能,也许对你有用。它适用于坐标 并延迟滚动秒数。尝试使用不同的坐标将进行滚动 停在你想要的地方。

在您的js中声明此功能

function WindowsScrollTopAnimado(coordinate,miliseconds) { 

    $('html, body').animate({scrollTop:coordinate}, miliseconds);
}

在需要时从服务器端调用它:

Private Sub ScrollToElement()
        Dim Cadena = "<script type='text/javascript'>"
        Cadena += "WindowsScrollTopAnimado( " & 1350 & "," & 1800 & ");"
        Cadena += " </script>"

        ScriptManager.RegisterStartupScript(Me.Page, Me.Page.GetType, "ScrollToControl", Cadena, False)
    End Sub

答案 4 :(得分:0)

我会在您要滚动的位置向HTML中插入一个anchor(这可以永久保存在底部的代码中,也可以在目标点动态插入),然后重定向到yoururl。 HTML#锚

不幸的是,这不是非常HTML5 / Web2.0,新的现代方式似乎在这里:http://dev.w3.org/html5/spec/single-page.html#scroll-to-fragid

答案 5 :(得分:0)

我对此很开心。我使用的一种简单的代码隐藏方式是将焦点放在屏幕上的最后一个元素上,例如空标签。
例如

lblMyEmptyLabel.Focus();

当然,这不能平滑地滚动窗口,几乎可以将您“传送”到那里。

有时上述方法不起作用(例如,使用引导程序模态时),在这种情况下,以下javascript对我有效:

<script type="text/javascript">
    function openModal() {
        document.getElementById('myElement').scrollIntoView(true);
        $('#myModal').modal('show');
    }
</script>

如果您正在使用asp元素(例如文本框)滚动到,请不要忘记在标签中添加clientidmode =“ static”部分,这样客户端上的ID就不会更改。