Angenommen, Sie möchten ein Skript Greasemonkey, das mit Safari und Chrome kompatibel ist.Greasemonkey-Skriptkompatibilität mit Firefox, Safari, Opera und chrome (onload-Ereignis)
Während in Firefox die Greasemonkey-Skripte nur ausgeführt werden, wenn das DOM bereit ist. Chrome, Safari und Opera scheinen die Greasemonkey-Skripts auszuführen, bevor das DOM bereit ist.
Also was ich suche ist eine Lösung, die nur einen Listener auf der Seite laufen lassen wird, warten auf das Ereignis DOM geladen/bereit, und bei Erhalt dieses Ereignisses, dann den Rest des Skripts ausführen. Wenn der verwendete Browser Chrome, Safari oder Opera ist. Wenn sie Firefox verwenden, führen Sie einfach das Skript aus und kümmern sich nicht um den Ereignis-Listener.
Wie wird das codiert?
@NV
Dank NV, wissen Sie, ob das Skript auch Google Chrome kompatibel ist?
Wird der Code
(function(){
// Code here run after 'load' event in all browsers.
})();
auch auf DOM bereit in Google Chrome laufen?
Durch einfaches Umbrechen von Code in einer anonymen Funktion wird die Ausführung erst nach dem Ladeereignis verzögert. Der erste Teil der obigen Antwort ist somit falsch und irreführend. – hallvors
hallvors, du hast Recht! Vielleicht spreche ich nicht klar. Ich habe die Antwort aktualisiert. – NVI
Ich markierte Antwort als Community-Wiki. Also, Sie können bearbeiten. – NVI