【发布时间】:2012-08-21 06:43:16
【问题描述】:
在我的 aspx 页面中,我在页面中间的 seomwhere 有一个控件。页面中有很多垂直滚动条,我目前位于页面顶部。有没有办法在javascript中单击按钮时在页面中间的控件上移动垂直滚动位置?
【问题讨论】:
标签: javascript jquery asp.net
在我的 aspx 页面中,我在页面中间的 seomwhere 有一个控件。页面中有很多垂直滚动条,我目前位于页面顶部。有没有办法在javascript中单击按钮时在页面中间的控件上移动垂直滚动位置?
【问题讨论】:
标签: javascript jquery asp.net
从您的标签看来,您使用的是 jQuery 库。您可以使用 jQuery 的 scrollTop
来完成此操作工作示例:http://jsfiddle.net/k4LCZ/
或者如果你想滚动窗口本身,使用window.scrollTo
window.scrollTo(0, 0);
【讨论】:
这样做:
var myControl = document.getElementById("controlName");
myControl.focus();
编辑:添加了对实际控件的引用
【讨论】:
【讨论】:
嘿,您可以使用该控件的 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');
希望这对其他用户有所帮助....
【讨论】: