首页 > 解决方案 > 你会如何找到一个 JS 函数来防止在不使用文件系统的情况下点击链接?

问题描述

我有一个看似基本的问题,但可能更复杂。我已经编写 JavaScript 很多年了,但以前从未真正遇到过这样的情况,所以我很好奇......

假设有一个网站有许多不同的开发人员在处理许多不同的 JavaScript 文件。当您使用该网站时,您会注意到一个可点击的链接(应该是可点击的)不再起作用——就好像它是通过 JavaScript 故意阻止的一样。如果不手动浏览文件系统,您将如何找到它被阻止的内容/位置?

我自己考虑过这个问题,我唯一能想到的就是 Chrome DevTools 步骤功能,并逐步完成单击链接时发生的所有事情,直到找到阻止它的原因,但如果有的话,这仍然可能很耗时许多与链接相关的功能。

让我们看两个实际的代码片段来可视化问题。

这是 HTML 中的示例链接:

<a id="the-link" href="https://example.com">Do Something</a>

这是在 vanilla JS 中停止链接单击的一种方法:

document.getElementById('the-link').addEventListener('click', function(e){
  e.preventDefault();
});

那个 JS 代码可以在任何地方……那你怎么找到它呢?

如果该代码使用 jQuery 怎么办?这使得 DevTools 的单步功能更加复杂,因为它需要单步执行 jQuery() 和 on() - 更不用说任何其他也侦听 click 事件的功能。

jQuery('#the-link').on('click', function(){
  return false;
});

我很好奇其他人会如何处理这个......

标签: javascriptjqueryhtmlgoogle-chrome-devtools

解决方案


推荐阅读