Das folgende JavaScript ermitteln den lokalen Pfad, in dem das Script installiert ist, und speichert diesen in der globalen Variablen ScriptPath in der Form '../root/js/':
var ScriptPath = (function() { var scripts = document.getElementsByTagName('script'), script = scripts[scripts.length - 1]; var path = ''; if (script.getAttribute.length !== undefined) { path = script.getAttribute('src'); } else { path = script.getAttribute('src', 2); } if (path) { path = path.substr(0,path.lastIndexOf('/')+1); } return path; }());
Es ist wichtig, dass obiger Code in der JavaScript-Datei ausgeführt wird, denn nur so kann der aktuelle Script-Pfad abgefragt und in einer globalen Variablen gespeichert werden.
Wenn in mehreren JavaScripts der lokale Pfad zum jeweiligen Script benötigt wird, empfieht es sich, verschiedene statische Objekt-Properties dafür zu definieren:
Datei MyClass.js
MyClass.prototype.ScriptPath = (function() { :
Die Klasse MyClass kann dann z.B. mit folgendem Code ein Bild in die Seite einbauen:
MyClass.prototype.ShowImage( ImageName ) { document.writeln( '<img src=\" + MyClass.prototype.ScriptPath + ImageName + '\" alt=\"\">' ); }