Ich versuche, eine jquery-ui Codebase anzupassen, um RequireJs zu verwenden, und ich verwende es auf einem viel langsameren (aber skalierbaren) virtualisierten Cloud-Dienst als der dedizierte Host, den ich vorher benutzt habe.Wie verhindert man, dass "hässliche" HTML-Vorläufer bei der Verwendung von jQuery UI und RequireJs angezeigt werden?
Meine Seiten sind standardmäßig eine hässliche Katastrophe von Vanille HTML. Das einzige, was dieses Chaos zum Leben erweckt, sind Aufrufe von JavaScript-Funktionen, die ihm die entsprechenden Registerkarten und das Layout geben. Tatsächlich ist die Seite lang und vertikal angeordnet ... eine Sektion nach der anderen ... bevor ich die .tabs()
Funktion anrufe, die sie zu einer einzelnen Einheit mit einer horizontalen Steuerung zusammenfaltet.
(Ziemlich zuversichtlich, ich bin in der jQuery UI mindset „es richtig zu machen“. Indem sie nicht das ganze UI durch Code Aufbau mit zu beginnen, kann es zumindest sah mit JavaScript deaktiviert. Obwohl seinem Ich bezweifle jemand benutzt immer noch Lynx, es gibt Probleme mit der Zugänglichkeit ... oder stellen Sie sicher, dass Ihre Inhalte von Suchmaschinen analysiert werden können. Ich erspare Ihnen meine alte Rede darüber, wie dies eine absurde Art der Trennung von Inhalten/UI ist. /)
Wenn ich <script>
-Tags wurde meine 3rd-Party-Bibliothek Abhängigkeiten und die $(document).ready
ausführen, um die jQuery UI Voodoo zu laden, sah der Benutzer nie die Vanille-u Gly HTML. Jetzt, da ich RequireJs verwende, verzögert die page.js
Datei und lädt asynchron nach das HTML ... Warten auf Bibliotheken, die nicht wirklich für die DOMready-Behandlung benötigt werden. Der langsamere Server macht dieses Aussehen wirklich schrecklich.
Ich könnte natürlich CSS-Styling verwenden, um die Hässlichkeit am Anfang zu verbergen, und überlagern mit einer "Loading ..." Grafik, bis die Benutzeroberfläche fertig war. Das ist, was in den Sinn kam zuerst, und ein ähnlicher Ansatz wird hier vorgeschlagen:
Jquery UI interface looks ugly before document.ready
(Hinweis: Es ist wie ein solches gemeinsames Problem scheint, dass ich fast würde denken, es wäre ein RequireJs Plugin sein, das ging Voraus und tat dies. Gibt es?)
In jedem Fall schien ich nicht zu sorgen, bevor ... und ich frage mich, ob ich eine einfachere Lösung vermisse. Wie verhindern Sie, dass Benutzer "hässlichen" HTML-Code sehen, wenn Sie RequireJs verwenden?
Danke für das Vertrauensvotum, obwohl es diesen Trend gibt, wo ich glaube, dass ich nur eine StackOverflow-Frage stellen werde, wenn ich die Antwort schon irgendwie kenne. Vielleicht sollte ich es eher in einem "lazyweb" -Geist verwenden und Fragen stellen * bevor * ich über sie nachdenke. :) That said think this könnte/sollte als requireJs Plugin getan werden? – HostileFork
: D Einer der Vorteile von StackOverflow ist, dass Sie das Problem in viel klareren Worten durchdenken - http://en.wikipedia.org/wiki/Rubber_duck_debugging. Ich sage, gib dieses große kritische Denken nicht auf. – robrich