我可以使用JavaScript(用户脚本)修改chrome:// extensions / page吗?
作者:互联网
我想使用JavaScript为chrome:// extensions / page添加一个搜索栏,所以我创建了一个名为test.user.js的文件,并在其中编写脚本:
// ==UserScript==
// @name chromeex
// @namespace chromeex
// @version v1.0
/* @reason
* just a test
* @end
*/
// @match chrome://extensions/
//
// ==/UserScript==
(function(){
alert("haha");
}());
但是当我在Chrome中加载它时,它说无效标题,最后我发现它是@match chrome:// extensions /导致错误.有没有一个解决方案?
解决方法:
Chrome扩展程序不会在chrome:// extensions /目录中执行,也不会在Chrome Web Store或其他一些重要区域执行以确保安全性.
一种简单的方法是,如果扩展程序可以访问Chrome扩展程序页面中的DOM,则可能会删除卸载它的能力,这对许多用户来说可能非常糟糕.但是,如果要在“扩展”页面之外构建某些内容以便能够搜索用户的扩展,则可能需要查看chrome.management API.
chrome本身不是允许的方案,这就是为什么你得到一个无效的方案错误. Here’s what Google has to say about it:
A match pattern is essentially a URL that begins with a permitted scheme (
http
,https
,file
, orftp
), and that can contain'*'
characters. The special pattern<all_urls>
matches any URL that starts with a permitted scheme.
因此,根据定义,无论如何,chrome作为一种方案都不会起作用.可以认为它不仅仅是另一个网页,而是Chrome的UI的一部分.
标签:userscripts,javascript,google-chrome,google-chrome-extension 来源: https://codeday.me/bug/20190926/1820147.html