Zobacz "Error: Permission denied to access property 'handler'".
Nie można już wywoływać jQuery strony docelowej w ten sposób.
(Zauważ, że w trybie @grant none
(domyślnie jako GM 2), unsafeWindow
jest taka sama jak window
... Ale wtedy nie można używać GM_
funkcji.)
@require
własną rękę kopia jQuery; nie spowoduje konfliktu ze stroną i załaduje się szybciej, do rozruchu.
Nie używaj unsafeWindow
do takich rzeczy (lub w ogóle, jeśli możesz w tym pomóc), a $(document).ready()
prawie nigdy nie jest potrzebne w skryptach Greasemonkey.
Twój skrypt (nowy) próbka nie jest niczym innym:
// ==UserScript==
// @name Dimi Test
// @namespace Dimi
// @version 1
// @grant GM_xmlhttpRequest
// @include about:addons
// @include http://*.myDomain.*/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// ==/UserScript==
$("body").prepend ('<h1>Hello World!</h1>');
I można następnie wymieszać GM_
funkcje i instancję jQuery bez żadnych problemów.
Uwaga: Skrypt pytanie ma // @include about:addons
.
Greasemonkey scripts will not work on the about:addons
page, by design.
Dzięki Brock, przetestowałem to pytanie. – Dimi