diff --git a/src/platform/CrossOrigin.coffee b/src/platform/CrossOrigin.coffee index 17e4dd2ca..5849b1d75 100644 --- a/src/platform/CrossOrigin.coffee +++ b/src/platform/CrossOrigin.coffee @@ -19,6 +19,19 @@ CrossOrigin = cb response, responseHeaderString <% } %> <% if (type === 'userscript') { %> + fallback = -> + $.ajax url, { + headers + responseType: 'arraybuffer' + onloadend: -> + if @status and @response + cb new Uint8Array(@response), @getAllResponseHeaders() + else + cb null + } + unless GM?.xmlHttpRequest? or GM_xmlhttpRequest? + fallback() + return gmOptions = method: "GET" url: url @@ -43,7 +56,7 @@ CrossOrigin = try (GM?.xmlHttpRequest or GM_xmlhttpRequest) gmOptions catch - $.queueTask cb, null + fallback() <% } %> file: (url, cb) ->