Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript跳转到放置在页面底部的特定div?_Javascript_Html_Internet Explorer_Web Applications_Web - Fatal编程技术网

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

如何使用JavaScript跳转到放置在页面底部的特定div?,javascript,html,internet-explorer,web-applications,web,Javascript,Html,Internet Explorer,Web Applications,Web,我在页面底部有一个div: <div id="myDiv"></div> 在执行JS函数后,我想转到这个div。换句话说,我想让我的url变成myurl#myDiv,并转到我的div,但不需要重新加载页面。如何使用JavaScript实现这一点?不幸的是,我还没有找到解决这个问题的有效方法。我没有使用任何JS库和框架。要滚动到特定元素,请使用IE6+和real浏览器支持的: document.getElementById('myDiv').scrollIntoVie

我在页面底部有一个div:

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


在执行JS函数后,我想转到这个div。换句话说,我想让我的url变成
myurl#myDiv
,并转到我的div,但不需要重新加载页面。如何使用JavaScript实现这一点?不幸的是,我还没有找到解决这个问题的有效方法。我没有使用任何JS库和框架。

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

document.getElementById('myDiv').scrollIntoView();
检查DOMReady上的
window.location.hash
,查看URL中是否有与文档中任何元素匹配的哈希

如果文档中有
#myDiv
链接,则需要向其添加
onclick
侦听器,根据上面的代码手动执行滚动,并
返回false
以避免跟随链接到
#myDiv


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

window.location.hash = '#myDiv';

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

是的,您是对的。然而,在一次简短的测试中,它确实与
location.href
配合使用,尽管IE可能会窒息。这在最新的Firefox中对我有效,但在Chrome中不起作用。+1
IE6+和真正的浏览器
:你说得对,IE 6在当今时代不再是真正的浏览器;)David的答案是更好的解决方案,任何DOM元素(有或没有ID)都可以滚动到视图中。使用我的答案,您只能滚动到页面上的ID/锚定。