javascript - 如何查找哪个 Javascript 触发或处理事件?

标签 javascript html jquery jquery-events developer-tools

我正在开发一个 HTML5 应用程序框架,该框架由 SAP JEE 应用程序服务器运行,为公司及其内联网和外联网站点构建。它基于网格框架“Semantic UI”,除此之外还包含大量(也是第三方)Javascript。

我目前正在检查一个错误,当页面向下滚动时,单击菜单中的特定图标会使页面以某种方式再次向上滚动。

由于存在大量的 Javascript,我目前正在努力寻找导致这种奇怪行为的 JS 代码片段。

我已阅读 this post here ,并了解了 Firebug 中的事件日志记录和 Chrome 中的事件处理程序检查,但这并没有真正帮助我。

我发现使用:

$(<my Elem>).on('click', function(event){
    event.preventDefault();
})

我可以阻止滚动,但我仍然没有发现它的原因。

有人对如何找到真正的原因有更多建议吗?

最佳答案

此行为可能是由多种不同原因引起的。其中经常被忽视的链接之一是像<a href="#">Some JavaScript Handler</a>这样的链接。 .

当 JavaScript 处理程序无法正确处理事件时(例如,通过调用 event.preventDefault() ,除了 JavaScript 处理程序之外,还将遵循 HTML 链接。大多数浏览器通过转至处理空 anchor 标记 # 的链接)页面顶部。当使用空 href 属性(如 <a href>Some JavaScript Handler</a> )时,可以轻松避免这种情况。

关于javascript - 如何查找哪个 Javascript 触发或处理事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36866613/

相关文章:

javascript - 双击可编辑

javascript - 为什么访问对象属性总是比访问数组项更快?

javascript - 向下滑动菜单 - 如何一次只允许打开一条路径?

javascript - 如何隐藏谷歌组织结构图中所选元素的 HTML 类?

javascript - 如何找到 jquery 选择的 witch(nth) 选项?

javascript - element.className 只返回 "undefined"

javascript - 如何使用 post 参数重定向到外部 URL?

javascript - 区分客户端运行的是 OSX 还是 Windows

javascript - 所选选项值的 jquery 验证警报

jquery - 如何使用 jQuery 在选择框中预选选项