我通常使用 Chrome 并通过内容管理器禁用 JavaScript,通过例外匹配规则允许某些网站。
我尝试编写一个例外规则,允许在从文件系统本地运行的页面上运行 JavaScript,这样我就可以测试正在开发的网站。
正在测试的页面的位置是,file:///C:/Development/ProjectName/example.html
所以我尝试添加一个例外规则,file:///C:/Development/*
但 Chrome 无法与任何规则匹配。
以下规则有效,file:///*
所以我很好奇为什么前一条规则无效。
file:///C:/Development/*
Chrome 不喜欢这条规则的什么地方?
答案1
不幸的是,这是不可能的。chrome.contentSettings
模式匹配的规范规定:
For http, https, and ftp URLs, the path must be a wildcard (/*).
For file URLs, the path must be completely specified and must not contain wildcards.
看此 Chrome 开发者页面了解更多详细信息。这很不幸!也许 Google 将来会允许这种形式的文件或目录资源通配符模式匹配。与此同时,您有以下几种选择:
* Temporarily allow JavaScript to run on all sites
* Use the general `file:///*` wildcard you discovered
* Set up an exception for each file you develop on
我个人更喜欢最后一个选项。你只需要记得时不时清理异常(这不是很大的负担)。