在JavaScript中找到自己的起源

Guy*_*and 4 javascript jquery

有没有办法找到当前运行脚本的来源?我想根据脚本的加载位置添加不同的行为.

例如从下载:

http://localhost:8080/js/myscript.js 
Run Code Online (Sandbox Code Playgroud)

VS

http://www.myhost.com/js/myscript.js
Run Code Online (Sandbox Code Playgroud)

我不是那个加载的人所以我无法在加载时添加一些信息,并且脚本是使用动态加载的$.getScript(),因此我无法查找该元素.

Nie*_*sol 6

调用脚本时,除非将其标记为deferasync,否则它将始终是该时刻页面上的最后一个元素(因为它正在阻塞).

使用此功能,您可以执行以下操作:

var scripts = document.getElementsByTagName('script'),
    mylocation = scripts[scripts.length-1].getAttribute("src");
Run Code Online (Sandbox Code Playgroud)

然后随便做任何你想做的事.