Javascript Aufruffunktion nach window.open

9

Ich versuche, eine Funktion aufzurufen, nachdem meine window.open-Funktion vollständig geladen wurde.

Die Verwendung der Onload-Funktion wird jedoch zu früh aufgerufen. Die URL, die getroffen wird, öffnet eine Excel-Tabelle und kann zwischen 2 Sekunden und 1 Minute dauern.

Die Funktion onload wird aufgerufen, sobald die Funktion window.open aufgerufen wurde. Ich muss jedoch wissen, wann das Excel-Dokument geöffnet wurde - nicht, wenn die URL getroffen wurde.

Ich habe versucht, ein Intervall zu setzen, aber das wird nicht aufgerufen:

%Vor%     
pm13 29.05.2012, 10:24
quelle

1 Antwort

4

Beachten Sie zunächst, dass Sie dies tun müssen, ohne aufgrund von domänenübergreifenden Einschränkungen blockiert zu werden (oder ohne CORS-Header auf Ihrem Server zu parametrisieren):

  • dient sowohl Ihrer Hauptseite als auch dem Popup-Inhalt (Ihrer Excel-Datei) aus derselben Domäne und demselben Port
  • öffne deine Hauptseite in http:// und nicht in file://

Wenn diese Bedingungen eingehalten werden, ist die beste Lösung, jquery zu verwenden, da die Lade Funktion wartet, bis alle Assets wie Bilder wurden vollständig empfangen ":

%Vor%

Seien Sie vorsichtig mit Ihrem globalen Schema: Jeder Browser / Konfiguration kann etwas anderes machen, wenn Sie denken, dass sie die Datei "öffnen". Es gibt keine Möglichkeit, mit einem einfachen open zu entdecken, wenn sie sich entschieden haben, es zu entlassen, hatte nicht das richtige Plugin, einfach heruntergeladen.

    
Denys Séguret 29.05.2012 11:18
quelle

Tags und Links