使用插件或扩展程序禁用单个javascript文件

hen*_*ijs 23 firefox google-chrome firefox-addon google-chrome-extension

我正在寻找一个Firefox插件或Chrome扩展程序,允许我禁用运行中的特定javascript文件.有许多用于禁用特定CSS文件,似乎找不到与JS文件相同的那些.是否存在一些限制,或者我应该在发布前更好地搜索?

PAE*_*AEz 21

AdBlock for Chrome可用于阻止JS文件.....
https://chrome.google.com/webstore/detail/gighmmpiobklfepjocnamgkkbiglidom
...点击AdBlock图标并选择"显示资源列表"并查找JS你想阻止并勾选旁边的框并进行选择.
注意
在设置中,"我是高级用户,请向我显示高级选项." 应该被选中.

  • "显示资源列表"即使在启用"我是高级用户,向我显示高级选项"后也不存在.?过时的解决方案? (6认同)
  • 是的,不是用户最友好的解决方案,但作为一个魅力.请更新答案,注意,在设置中,"我是高级用户,请向我显示高级选项." 应该被选中.FF的萤火虫和开发者工具栏的作者应该注意;) (2认同)

Rob*_*b W 21

这可以通过使用webRequestAPI 的Chrome扩展程序轻松完成.以下示例阻止所有外部脚本.替换<all_urls>更具体的模式.对于非常动态的模式,您可以修改chrome.webRequest.onBeforeRequest事件侦听器.

  1. 创建一个新目录.
  2. 创建以下文件.
  3. 通过在开发者模式下加载解压扩展 chrome://extensions/

background.js

chrome.webRequest.onBeforeRequest.addListener(
  function() { return {cancel: true}; },
  {
    urls: ["<all_urls>"], // Change this to a more specific pattern
    types: ["script"]
  },
  ["blocking"]
);
Run Code Online (Sandbox Code Playgroud)

manifest.json

{
   "name": "Block request",
   "version": "1.0",
   "manifest_version": 2,
   "background": {
       "scripts": ["background.js"]
   },
   "permissions": [
       "webRequest",
       "webRequestBlocking",
       "<all_urls>"
   ]
}
Run Code Online (Sandbox Code Playgroud)

PS.密切关注chrome.declarativeWebRequestAPI.在撰写本文时,它位于beta/dev频道,但是当你阅读这个答案时.这个新API比API更有效webRequest,并且允许使用事件页而不是后台页(webRequestAPI不能在事件页上使用).