javascript - 不改变地址栏就跳转到内部链接?

标签 javascript html

通常人们要求更改地址栏而不刷新,我想要相反的:我想跳转到页面中的 anchor ,例如拥有

<a name="foo">

然后实现与用户按下

相同的功能
<a href="#foo">

不改变地址栏。这纯粹是装饰性的,但这意味着“完成后再次设置 window.location”之类的建议不会有帮助,因为中间的更改仍然是明显的(地址栏会闪烁,这正是我想要的)避免)。

最佳答案

有DOM函数 element.scrollIntoView() 。出于您的目的,这将像这样工作:

var target = document.getElementById('foo');
target.scrollIntoView();

您还应该删除 <a name="foo">链接,并将它们替换为任何带有 id 的元素。例如:

<h1><a name="heading"></a>Heading</h1>

<h1 id="heading">Heading</h1>

关于javascript - 不改变地址栏就跳转到内部链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10164411/

相关文章:

javascript - Neo4j-驱动程序:无法读取未定义的属性 'driver'

javascript - 循环 jQuery 并在每次更改时分配?

html - 未找到 Bootstrap 4 应用程序和 _settings,如 sass 文件

javascript - 文本区域中的对象数组条件样式。 Angular 6

javascript - 数据库加载后无法隐藏加载弹出窗口。使用 Cordova 和 JQuery

javascript - 如何切换自定义 HTML 元素的 View /显示?

javascript - HTML 范围 : set value attribute dynamically

javascript - 谷歌地图显示 BAD

javascript - 无法使用图像叠加添加 bing 主题

Javascript DOM 将值发送到 iframe 中嵌入的函数以模拟按键