Ich versuche, etwas wie ein C #include "filename.c"
oder PHP include(dirname(__FILE__)."filename.php")
aber in Javascript zu tun. Ich weiß, dass ich das tun kann, wenn ich die URL bekomme, von der eine js-Datei geladen wurde (z. B. die URL, die im src-Attribut des Tags angegeben ist). Gibt es eine Möglichkeit für das Javascript das zu wissen?Wie bekomme ich den Dateipfad des gerade laufenden Javascript-Codes
Alternativ gibt es eine gute Möglichkeit, JavaScript dynamisch aus der gleichen Domäne zu laden (ohne die Domäne genau zu kennen)? Nehmen wir zum Beispiel an, wir haben zwei identische Server (QA und Produktion), aber sie haben eindeutig unterschiedliche URL-Domains. Gibt es eine Möglichkeit, etwas wie include("myLib.js");
zu tun, wo myLib.js von der Domäne der Datei geladen wird, die es lädt?
Sorry, wenn das ein wenig verwirrend formuliert ist.
Dies ist ein großartiger Vorschlag, solange der Code im Skript "inline" ausgeführt wird (dh in einem globalen Kontext oder "sofort ausgeführt anonyme Methode", wie Sie vorgeschlagen haben, und nicht in einem "später aufgerufen" Funktion oder Set-Timeout). Sie könnten auf diese Weise in jedem Javascript eine Variable für die aktuelle Datei/Pfad erstellen. Vorsichtig aber, "undichte globale Variablen" können nicht durch das, was ich sofort-run-anon-Methoden genannt habe, gelöst werden. '(Function() {...})();' - Ihr Beispiel oben erstellt immer noch eine globale Variable 'src' genannt, weil es keinen' var'-Spezifizierer davor hat – Graza
Das ist ziemlich genial. Ein Problem besteht darin, dass es fehlschlägt, wenn ich die Methode "jetScript" von jQuery verwende. Irgendeine Lösung dafür? –
Es gibt einen Var-Spezifizierer für 'src' (siehe Komma am Ende der ersten Zeile) – InfinitiesLoop