是否有在浏览器滚动到命名锚点时触发的事件
Is there an event that fires when a browser scrolls to a named anchor?
>当使用命名锚点链接到页面时,例如 page.html#heading
浏览器将加载页面,然后向下跳转到锚点。是否有浏览器事件在完成此操作时触发?
为了解释我背后的原因:我想使用该事件在浏览器中触发动画。
更改哈希会触发hashchange
事件。
但是,我认为在加载链接已经设置了哈希的 url 时不会触发。但是,如果您希望某个脚本根据哈希运行,则可以在页面加载时检查哈希(location.hash
(。
在 Mac 上的 Safari 7.0.3 中,这有效...
HTML 具有:
<a id="jumper" href="#aa">Jump</a>
.JS:
<script>
var j = document.getElementById("jumper");
j.addEventListener("click", registerAnchorJump);
function registerAnchorJump(e) {
window.addEventListener("scroll", unregisterAnchorJump);
}
function unregisterAnchorJump(e) {
// trigger your animation...
console.log(window.scrollY);
window.removeEventListener("scroll",unregisterAnchorJump);
}
</script>
花哨的步法,以防止在用户正常滚动窗口时不断触发滚动事件。
相关文章:
- 如何将javascript事件从web浏览器wpf控件发送到wpf的c#代码
- 如何使用纯 JavaScript 在所有浏览器中区分左/右/中键单击事件
- image.onload事件和浏览器缓存
- 在循环中附加事件处理程序时出现浏览器性能问题
- 阻止浏览器对keydown事件作出反应,但不取消该事件
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 如何识别“;输入“;没有浏览器检测的事件
- 我可以让我的网站的内容可编辑区域对安卓股票浏览器上的触摸事件更敏感吗
- 是否可以更改更改特定事件在地址栏或浏览器中的URL
- 火狐浏览器不会在前进时触发流行状态事件
- 如何在 Windows Mobile 5 浏览器中检测 JavaScript 密钥事件
- 为什么IE浏览器不喜欢我的点击事件
- Kango 浏览器扩展开发中的鼠标悬停事件弹出窗口
- 监视激发的Javascript事件(无论浏览器如何)
- 为什么在Mac浏览器上按下metaKey时,Javascript会丢弃keyUp事件
- 如何由于浏览器的平滑滚动而忽略大量滚动事件
- 将键盘和鼠标事件从一个浏览器选项卡发送到另一个
- 如何切换浏览器事件目标
- dom事件-浏览器关闭时window.unload上的JavaScript警报,但刷新浏览器时不应发出警报
- 可滚动Div onfocus事件浏览器支持