在不使用JQuery的ASP.NETAjax异步回发后滚动到页面顶部
在更新面板中进行异步回发后,我需要滚动到页面顶部。我尝试了几种方法,当它们都滚动到页面顶部时,它们都被ASP.NETAjax“覆盖”,ASP.NETAjax将页面返回回发时的位置。我已经在Page指令中设置了MaintainScrollPositionOnPostBack=“false”。您是否尝试过window.scrollTo(0,0) 如果有,可以与setTimeout结合使用在不使用JQuery的ASP.NETAjax异步回发后滚动到页面顶部,asp.net,asp.net-ajax,Asp.net,Asp.net Ajax,在更新面板中进行异步回发后,我需要滚动到页面顶部。我尝试了几种方法,当它们都滚动到页面顶部时,它们都被ASP.NETAjax“覆盖”,ASP.NETAjax将页面返回回发时的位置。我已经在Page指令中设置了MaintainScrollPositionOnPostBack=“false”。您是否尝试过window.scrollTo(0,0) 如果有,可以与setTimeout结合使用 window.setTimeout("window.scrollTo(0, 0)", 3000); 虽然我认为
window.setTimeout("window.scrollTo(0, 0)", 3000);
虽然我认为这可能会产生一些丑陋的跳跃
另一种方法是挂接EndRequest事件处理程序
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
window.scrollTo(0, 0);
}
是的,但正如我所说,ASP.Net会向下滚动到单击发生的位置。window.setTimeout(“window.scrollTo(0,0)”,3000);是的,但这是一个变通解决方案。有点臭。你能试一下我的另一个想法吗?试过了,但没有成功。有东西使页面向下滚动到我刚刚激活的面板。