Atat GM_xmlhttpRequest cat si xmlhttpRequest sunt asincrone . Cu greasemonkey voiam sa extrag niste date dintr-un site dupa o expresie xpath , dar din cauza faptului ca request-ul e asincron , codul meu nu se executa cum ar fi firesc . codul meu ar fi urmatorul : function gGet(link,func,elements) { GM_xmlhttpRequest({ method: 'GET', url: link, headers: { 'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey', 'Accept': 'application/atom+xml,application/xml,text/xml', }, onload: function(responseDetails) { func(responseDetails.responseText); } }); } var elements = new Array(); gGet("some.site",function(content) { parsarea elementelor si adaugarea lor in array ... elements.push(parsedElement); },elements); ... procesarea elementelor array-ului problema ar fi ca scriptul incepe sa imi proceseze elementele array-ului pana nu termina de executat GM_xmlhttpRequest , which is not good . Ceva work-around-uri sau sfaturi cum pot sa fac request-ul sa fie sincron ?