7

dostaję ReferenceError w poniższym kodzie userscript:ReferenceError: GM_xmlhttpRequest nie jest zdefiniowana

// ==UserScript== 
// @name   ... 
// @namespace  ... 
// @description ... 
// @include  ... 
// @grant   GM_xmlhttpRequest 
// ==/UserScript== 

console.log(GM_info); 
try 
{ 
    console.log(GM_xmlhttpRequest({ method: "GET", url: "http://google.ca/", synchronous: true }).readyState); 
} 
catch (e) 
{ 
    console.log(e); 
} 
... 

najpierw logi GM_info z powodzeniem, po czym rejestruje ReferenceError. (Używam Firefox/Firebug.)

ReferenceError: GM_xmlhttpRequest is not defined

Dlaczego pojawia się ten błąd?

+0

Nie można powielać. Jakie są twoje specyfikacje? (Wersja OS, FF, wersja GM itp.) Jest to najprawdopodobniej spowodowane nieważnym blokiem metadanych. –

+0

Win7 SP1 x64, FF 21,0, GM 1,9. Blok metadanych pochodzi z [tego pliku] (https://ninjaecho.codeplex.com/SourceControl/latest#ninjaecho.user.js), z modyfikacją tylko '@ grant'. –

+0

Testowany w tym samym systemie (mniej SP1). Nie znaleziono problemu. Czy twój blok metadanych ma wiodące białe znaki? Czy plik jest zakodowany w formacie ANSI lub UTF? Pastebin * dokładnie * skrypt, który powiela problem. Wykonaj krok 4 z [tej odpowiedzi] (http://stackoverflow.com/a/16315994/331508). –

Odpowiedz

4

Ponowna instalacja skryptu rozwiązała problem. Nie musiałem ponownie uruchamiać Firefoksa, ale może być pomocne dla innych osób. Brock's answer ma pomocne wskazówki dotyczące usuwania błędów dla takich problemów.

0

miałem ten sam problem, a co ustalone to dla mnie było to dodanie na górze:

// @grant  GM_xmlhttpRequest 
Powiązane problemy