C# 设置回发时的滚动位置

C# 设置回发时的滚动位置,c#,asp.net,postback,positioning,C#,Asp.net,Postback,Positioning,我是用asp.net c#代码写的 我想控制回发帖上的页面位置。我想要的是,onpostback不等于true或false。真的太低,假的太高。另一个问题是,根据按下哪个控件,位置应该不同。第三个问题是maintaintScrollPositionOnPostback=true在Firefox中不起作用 Want I Want与href相关的标签类似,例如,除了在代码中 谢谢你的建议 假设您能够使用JQuery,请尝试以下操作: 只需插入脚本并传递触发回发事件的控件的ID 如果出于某种原因无法

我是用asp.net c#代码写的

我想控制回发帖上的页面位置。我想要的是,onpostback不等于true或false。真的太低,假的太高。另一个问题是,根据按下哪个控件,位置应该不同。第三个问题是maintaintScrollPositionOnPostback=true在Firefox中不起作用

Want I Want与href相关的标签类似,例如
,除了在代码中


谢谢你的建议

假设您能够使用JQuery,请尝试以下操作:

只需插入脚本并传递触发回发事件的控件的ID

如果出于某种原因无法使用jquery,那么以下是一种不那么优雅的方法:

编辑(样本):

下面是一个使用jquery方法的纯html示例,假设您在html页面所在的文件夹中有一个名为jquery.js的脚本文件

<html>
<head>
    <script type='text/javascript' src='jquery.js'></script>
    <script type='text/javascript'>
    $(document).ready(function() {
        $('html,body').animate({ 
            scrollTop: $('#scrollHere').offset().top 
            }, 0//increase for smooth, visible scroll
        );
    });
    </script>
</head>
<body>

<div style='width:100px; height:1000px; background-color:red;'>
top filler
</div>

<a id='scrollHere' href='#'>Scrolls to this element</a>

<div style="width:100px; height:1000px; background-color:blue;">
bottom filler
</div>

</body>
</html>

如果您知道窗口的具体像素值,那么可以尝试在Javascript中使用window.scrollTo()函数

window.scrollTo(0,0);

按以下方式在按钮上保持页面滚动位置:

$("#Next").click(function() { $('html,body').animate(
{ scrollTop: $('.required').offset().top 
}, 0//increase for smooth, visible scroll ); });

JQuery还可以,但我不知道如何使用它。你能告诉我更多的细节吗。一个有效的例子会很好。谢谢你的例子。我试过你说的,选项2。我将呼叫置于按钮的单击事件中。我收到以下错误:“Microsoft JScript运行时错误:'offset().top'为null或不是对象”。字段名称错误导致此错误。它现在起作用了。谢谢
$("#Next").click(function() { $('html,body').animate(
{ scrollTop: $('.required').offset().top 
}, 0//increase for smooth, visible scroll ); });