之前搞模块加载,苦于无法获取当前文件路径,文件名:
后来没通过获取当前文件路径,文件名,给搞定了。
结果今天把这个问题也解决了,做个记录:
//file: /zhus/err.js: var curSrc; new function() { try { this.a(); } catch(e) { curSrc = e.fileName.replace(/\.[^\.]*$/, ""); } }; //console.log(curSrc);=>/zhus/err
以上编码,只适用于firefox,这是我后来测试才发现的,哈哈。so修正如下:
function getSrc(node) { var src = ""; if (node.nodeName.toLowerCase() === "script") { return src = node.src; } return node.lastChild && arguments.callee(node.lastChild); }
恩,这样就好了,但是局限是,只能是同步加载的方式,如果异步加载外部js文件的话,就失效了。。。