在控制位置移动页面中间的滚动

时间:2012-08-21 06:43:17

标签: javascript jquery asp.net

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

6 个答案:

答案 0 :(得分:1)

从您的代码中看起来您正在使用jQuery库。您可以使用jQuery的scrollTop

来完成此任务

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

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

window.scrollTo(0, 0);

答案 1 :(得分:0)

这样做:

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

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

答案 2 :(得分:0)

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

overflow: scroll;

点击此链接可获取更多详细信息:CSS Tricks

答案 3 :(得分:0)

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

像这样的事情

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

答案 4 :(得分: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/

答案 5 :(得分: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'); 

OR

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

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