2

在我的 aspx 页面中,我在页面中间的 seomwhere 有一个控件。页面中有很多垂直滚动条,我目前位于页面顶部。有没有办法在javascript中单击按钮时在页面中间的控件上移动垂直滚动位置?

4

6 回答 6

1

从您的标签来看,您似乎正在使用 jQuery 库。您可以使用 jQuery 的scrollTop来完成此操作

工作示例:http: //jsfiddle.net/k4LCZ/

或者,如果您想滚动窗口本身,请使用window.scrollTo

window.scrollTo(0, 0);
于 2012-08-21T06:46:46.920 回答
0

像这样做:

var myControl = document.getElementById("controlName"); 
myControl.focus();

编辑:添加了对实际控件的引用

于 2012-08-21T06:47:26.123 回答
0

如果要添加的内容在一个分区(div)中,最好的方法是使用 CSS 溢出选项。

overflow: scroll;

查看此链接以获取更多详细信息:CSS 技巧

于 2012-08-21T06:50:00.233 回答
0

嘿,您可以使用该控件的 ID 向下滚动到该特定部分。

像这样的东西

 window.onload=(function(){ document.location="#controlID";});
于 2012-08-21T06:52:46.060 回答
0

使用漂亮的页面动画滚动到您的位置。因此,当您单击按钮时,请使用以下代码调用函数:

var WhereToMove = jQuery("#ControlIdToMoveOn");
// using the 'html,body' will move the full page, to move a div use his id
jQuery('html,body').animate({scrollTop: WhereToMove.position().top - 10}, 1000);

还有一个滚动 div 而不是整个页面的示例:http: //jsfiddle.net/k4LCZ/3/

于 2012-08-21T06:58:16.783 回答
0

您也可以将其与偏移量一起使用。

jQuery('html,body').animate({scrollTop: jQuery("ID_OF_THE_DIV").offset().top},'slow');

例如; 对于这种情况:

<a href="#ControlID" id="atagid"> <img height="39" border="0" width="37" src="/close.png"/> </a> 
jQuery('html,body').animate({scrollTop:jQuery("#atagid").offset().top},'slow'); 

或者

 var id = jQuery('a[href$="#ControlID"]');       
 jQuery('html,body').animate({scrollTop:jQuery(id).offset().top},'slow');

希望这对其他用户有所帮助....

于 2012-08-21T07:27:10.880 回答