将滚动条移动到页面中间的控制位置

Move the scroll at middle of page at control position

本文关键字:中间 控制 位置 滚动条 移动      更新时间:2023-09-26

在我的aspx页面中,我在页面中间的seomw上有一个控件。页面中有很多垂直滚动条,我现在位于页面顶部。有什么方法可以在javascript中点击按钮时移动页面中间控件的垂直滚动位置吗?

从您的标记来看,您似乎在使用jQuery库。您可以使用jQuery的scrollTop 来实现这一点

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

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

window.scrollTo(0, 0);

这样做:

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

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

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

overflow: scroll;

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

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

像这样的

 window.onload=(function(){ document.location="#controlID";});

滚动到您的位置,并对页面进行良好的动画处理。因此,当你点击按钮时,调用一个带有以下代码的函数:

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/

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

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');

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