如何使用JavaScript跳转到页面底部的特定div?

时间:2012-09-05 14:04:51

标签: javascript html internet-explorer web-applications web

我有一个位于页面底部的div:

<div id="myDiv"></div>

我想在执行JS函数后转到这个div。换句话说,我希望我的网址变为myurl#myDiv并转到我的div。但是没有重新加载页面。如何使用JavaScript完成此操作?不幸的是,我还没有找到解决这个问题的工作方案。我没有使用任何JS库和框架。

3 个答案:

答案 0 :(得分:20)

要滚动到特定元素,请使用IE6 +和真实浏览器支持的scrollIntoView

document.getElementById('myDiv').scrollIntoView();

检查DOMReady上的window.location.hash,查看网址中是否存在与文档中任何元素匹配的哈希值。

如果文档中有#myDiv个链接,则需要向其添加onclick个侦听器,根据上面的代码手动执行滚动,并return false以避免关注指向#myDiv的链接。

Demo

答案 1 :(得分:8)

尝试将窗口的位置设置为ID的位置。然后浏览器将滚动到该元素。

window.location.hash = '#myDiv';

答案 2 :(得分:3)

scrollIntoView(true)方法还接受一个参数,指定是对齐顶部(true)还是底部(false)。