
Ich schaue mir diese Website an, die einen clientseitigen JavaScript-Fehler aufweist, der dadurch verursacht wird, dass die Skripte in der falschen Reihenfolge geladen werden. Das Problem ist, dass ich diese Quelle nicht besitze, aber ich muss die Site wirklich so schnell wie möglich nutzen.
Gibt es einen Browser/ein Browser-Plugin, mit dem ich das im Browser beheben und die Seite weiterhin verwenden kann? Das Problem ist, dass, da dies im head
Element geladen ist, der JS-Fehler bereits aufgetreten ist, wenn ich das HTML ändere. Und wenn ich die Änderungen aktualisiere (zumindest in Chrome), sind meine lokalen Änderungen verschwunden.
Im Einzelnen sieht das HTML so aus:
<script
language="javascript"
src="/scripts/util.js"
type="text/javascript"></script>
<script
language="javascript"
src="/scripts/scriptaculous/prototype.js"
type="text/javascript"></script>
<script
language="javascript"
src="/scripts/scriptaculous/scriptaculous.js"
type="text/javascript"></script>
Und um den Fehler zu beheben, müsste es so aussehen:
<script
language="javascript"
src="/scripts/scriptaculous/prototype.js"
type="text/javascript"></script>
<script
language="javascript"
src="/scripts/scriptaculous/scriptaculous.js"
type="text/javascript"></script>
<script
language="javascript"
src="/scripts/util.js"
type="text/javascript"></script>
Beachten Sie, wie es util.js
nach unten verschoben wurde.
Antwort1
Dies können Sie möglicherweise erreichen, indem SieBenutzerskriptdas das benötigte JavaScript in der benötigten Reihenfolge lädt. Ein Userscript kann im Wesentlichen jedes beliebige JavaScript auf der Seite ausführen, einschließlich des Ladens anderer JavaScripts. Die einzige Sorge wäre, ob der Browser das Userscript vor oder nach dem Laden der anderen Skripte auf der Seite ausführt.Diese Stack-Overflow-Fragescheint zu implizieren (2. Antwort), dass es eine Möglichkeit gibt, dies zu tun.
Ein einfaches Benutzerskript könnte die oben genannte Methode und den document.write
Befehl verwenden, um nach Bedarf ein neues Element einzufügen, <script>
bevor die Seite anderes JavaScript analysiert.