Просто чтобы прояснить, я прочитал несколько похожих вопросов
1 2 3 4 5 и т. Д.
ни один из них не имеет отношения к моему.
Как я понял, скрипты содержимого WebAPI , даже если они выполняются в изолированной среде, могут манипулировать DOM страницы и добавлять EventListeners, по крайней мере, так говорят Developer.Chrome и MDN.Тем не менее, у меня возникла ситуация, когда это не похоже на правду.
Вот пример расширения:
manifest.json
{
"manifest_version": 2,
"name": "Foo",
"version": "0",
"permissions":
[
"storage",
"https://steamcommunity.com/*"
],
"content_scripts":
[ {
"matches": ["*://steamcommunity.com/groups/*"],
"js": ["content.js"],
"run_at": "document_idle",
"all_frames": true
} ]
}
content.js
'use strict';
const butArea = document.querySelector(".grouppage_join_area");
function queueGroup()
{
alert('yay!');
}
if (butArea)
{
butArea.addEventListener("click", queueGroup, false);
}
Загрузите распакованный и перейдите к https://steamcommunity.com/groups/SteamClientBeta. Нажмите кнопку и без предупреждения.Добавьте EventListener вручную через консоль, и он просто werks .Я пробовал click/onclick
свойства тоже, но тот же результат.
Да, я могу ввести свой код на страницу, здесь нет проблем, но я не очень хочу, потому что он должен работать как есть, нет?Иначе - почему бы и нет, что мне не хватает?