dedlfix: jQuery, Bedeutung eines Selectors

Beitrag lesen

Tach!

Ich stimme at hier zu. Diese Ausnahmen des W3C mögen ja philosophische Implikationen haben,

Die Regeln und Ausnahmen des W3C haben auf den konkreten Fall keine großartige Bedeutung. Anscheinend habt ihr kein Problem, einen Großteil der HTML-Regeln weglassen zu können, wenn ihr ein einzelnes <p></p> notiert, aber ein großes Problem, sie im kleinen nicht weglassen zu können, wo es nicht nur nicht auf sie ankommt, sondern wo sie sogar erst noch weggekürzt werden müssen, bevor die eigentliche Funktion ausgeführt werden kann. Nochmal zur Erinnerung, es geht um den Fall jQuery('<p></p>'), mit dem Ziel, ein einzelnes leeres Element ins DOM zu hängen. Ohne jQuery würde man die DOM-Funktion document.createElement('p') aufrufen. Aber oh Schreck, da sind gar keine spitzen Klammern drumherum und auch kein schließendes Tag. Diese zusätzlich zu notieren wäre sogar ein Fehler. Was macht ihr denn an der Stelle mit der ach so wichtigen Konsistenz? Jetzt kommt nicht mit der Ausrede "anderer Kontext", denn diesen anderen Kontext haben wir genauso bei jQuery('<p></p>').

Was ist mit einem Konstrukt wie jQuery('<script></script>');, wenn das innerhalb eines script-Bereiches in einem HTML-Dokument notiert ist? Das würde das ganze Vorhaben torpedieren, weil </script> vom Browser als vorzeitiges Ende des Scriptbereich interpretiert wird. Den Funktionsaufruf als jQuery('<script><\/script>'); zu schreiben, wie es syntaktisch notwendig ist, würde auch wieder die Konsistenz kaputtmachen.

Diese Ausnahmen muss man jetzt alle im Kopf behalten. Ich muss das immer und immer wieder nachschlagen. Nervt!

Ja, Ausnahmen gibt es überall. Wenn man die Konsistenz vorzieht, um sich keine Ausnahmen merken zu müssen, dann ist da für mich der Punkt erreicht, wo es gefährlich wird, weil man dann anfängt, die Stellen nicht mehr zu beachten, die notwendigerweise eine eigene Sonderbehandlung erfordern. Nicht immer melden sich solche Stellen einigermaßen auffällig mit Fehlermeldung wie das </script>-Beispiel. Unbemerkt schlummernde Lücken sind die eigentlichen Probleme falsch angewendeter Konsistenz.

Um es nochmal deutlich zu sagen, es geht mir nicht darum, die Konsistenz an sich zu verteufeln, sondern dann, wenn man sie als ein wohliges Ruhekissen ansieht, um sich Wissen und das Erinnern daran zu ersparen.

dedlfix.