如果在*.js文件中获取当自己当前的路径是很重要的。

举个例子,如果一个css文件中引用图片,如background-img: url('./Images/bg.png')。那么图片的路径,是相对于css文件而言的。

但是,如果我们再js文件中引用图片,如img.src = './images/bg.png';  但是,图片却不是根据js的相对路径的。而是根据(引用该js)的html的相对路径来决定的。这显然不合理、

所以如果我们能获取js文件的绝对路径的话,就会好很多。譬如 img.src = path + './Images/bg.png';

 

获取当前js文件的路径。

var getPath = function(){
    var jsPath = doc.currentScript ? doc.currentScript.src : function(){
      var js = doc.scripts
      ,last = js.length - 1
      ,src;
      for(var i = last; i > 0; i--){
        if(js[i].readyState === 'interactive'){
          src = js[i].src;
          break;
        }
      }
      return src || js[last].src;
    }();
    return jsPath.substring(0, jsPath.lastIndexOf('/') + 1);
  }()