4 Stimmen

jQuery $(document).ready und svg-web window.onsvgload

JQuery erfordert natürlich, dass sich alles innerhalb von

$(document).ready = function() {};

Ähnliches gilt für svg-web:

window.onsvgload = function() {};

Gibt es einen korrekten, eleganten Weg, diese zu kombinieren, der keine Probleme mit sich bringt?

2voto

Nick Craver Punkte 609016

Sie können die Funktionen einfach so binden, dass sie bei dem entsprechenden Ereignis ausgeführt werden, etwa so:

$(function() { //shortcut for $(document).ready(function() {
  //stuff that needs the DOM to be ready
});
$(window).bind('svgload', function() {
  //SVG stuff
});

Es kann nicht schaden, beides zu verwenden, das ist sogar das geeignet. Nutzung, immer das Ereignis verwenden, das Sie brauchen, das ist nicht anders als document.ready vs window.load wenn Sie Bilder benötigen, nicht nur das DOM.

Wenn es wichtig ist, svgload geschieht nach onload in den Browsern, die es zum Zeitpunkt dieser Antwort unterstützen, nicht sicher, ob das konsistent sein wird, wenn andere Browser es unterstützen, obwohl.

1voto

colinmarc Punkte 2361

Endlich habe ich das im "Benutzerhandbuch" gefunden:

$(document).ready(function() {
    window.addEventListener('SVGLoad', function() {
       // ready to work with SVG now
    }, false);
});

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X