JS获取当前脚本的路径

版权声明:本文为博主原创文章,评论区告知一声,大家随意转载! https://blog.csdn.net/MessageBox_/article/details/83826486

今天遇到一个很坑的bug,有一个功能在IE10和chrome上是好的,在Edge上是坏的,最后发现原来是外部引用的脚本库中的一个功能函数出错导致的。
还有一点,Edge的图片和脚本加载失败,控制台竟然不报错!!!这真的是个巨坑啊!!!

好了,下面直接给出结果

function  getScriptPath(name){
	var jsPath =  document.currentScript ? document.currentScript : function(){
		var src = '',  scriptList = document.scripts;
		for( var i = scriptList.length; i > 0 ; i-- ){
			if( scriptList[i].src.indexOf(name) > -1 ){
				src = scriptList[i].src;
				break;
			}
		}
		return src;
	}();
	return  jsPath.substring(0, src.lastIndexOf('/')+1);;
}

其中document.currentScript可以直接获取当前脚本的路径,但是目前测试IE不支持,在IE下只能使用document.scripts对象遍历获取。

猜你喜欢

转载自blog.csdn.net/MessageBox_/article/details/83826486