Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[Hilfe] GM_xmlhttpRequest und jQuery

Der Schmiermaxe pimpt die Geocaching-Website.

Moderator: UF aus LD

Antworten
skywalker90
Geomaster
Beiträge: 573
Registriert: Do 14. Mai 2009, 17:06

[Hilfe] GM_xmlhttpRequest und jQuery

Beitrag von skywalker90 »

Hallo zusammen,

ich habe da ein Probelem mit GM_xmlhttpRequest in Verbindung mit jQuery.Deferred() unter FireFox.
Mit Chrome tut alles ohne Probleme, nur beim FireFox komme ich schon über einen Tag lang nicht weiter...

Vielleicht habt ihr mir den rettenden Tipp... :gott:

Zum Problem:
Ich muss Daten an einen Server posten (crossdomain) und wenn das erledigt ist (Erfolg oder Fehlschlag) soll das Deferred freigegeben werden.
Und hier geht es schief: https://github.com/lukeIam/GCComment/bl ... r.js#L3732
  • onload wird aufgerufen
  • e.responseText ist ein valides JSON (welches ich auch schon testweise parsen und ausgeben lassen habe)
  • resolve() wird aufgerufen und bricht irgendwie ab (ohne Fehlermeldung)
  • Allerdings kommen wir auch nie im done() an (testweises console.log() in L3612)
  • ein nach resolve() eingefügtes console.log() wird nicht mehr ausgeführt -> resolve() wird nie abgeschlossen
Und jetzt kommt das komische: Ich habe die Situation nachgebaut und da funktioniert es reproduzierbar...
https://gist.github.com/lukeIam/31fef40e9c783ddddc5e

Vielleicht sitze ich auch schon zu lange davor und sehe es einfach nicht...
Bin über Hinweise aller Art dankbar.

Grüße,
Luke
skywalker90
Geomaster
Beiträge: 573
Registriert: Do 14. Mai 2009, 17:06

[Solved] GM_xmlhttpRequest und jQuery

Beitrag von skywalker90 »

skywalker90 hat geschrieben:ich habe da ein Probelem mit GM_xmlhttpRequest in Verbindung mit jQuery.Deferred() unter FireFox.
Problem endlich gefunden :D :

jQuery und $ zeigten auf die jQuery-Version der Seite und nicht die der GM-Skriptes.
Und wenn eine Seiten-Funktion in den GM_xmlhttpRequest-Handlern auftaucht wird das aus Sicherheitsgründen blockiert.
Antworten