Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 确定调用外部js文件中函数的HTML页面_Javascript - Fatal编程技术网

Javascript 确定调用外部js文件中函数的HTML页面

Javascript 确定调用外部js文件中函数的HTML页面,javascript,Javascript,是否可以在运行时确定这一点 external.js的内容: function x() { //can i get the path/name of the html file that included this js file? //which is test.html } test.html的内容 script src=external.js包含此js文件的HTML文件很简单,它只是当前文档的地址。location.href 如果要获取URL的特定部分,例如路径名的最后一部分

是否可以在运行时确定这一点

external.js的内容:

function x() {

  //can i get the path/name of the html file that included this js file?

  //which is test.html

}
test.html的内容

script src=external.js

包含此js文件的HTML文件很简单,它只是当前文档的地址。location.href

如果要获取URL的特定部分,例如路径名的最后一部分:

var filename= location.pathname.split('/').pop();
调用函数的HTML页面是一个稍微不同的命题,因为在跨文档脚本世界中,您可以将函数从一个窗口传递到另一个窗口,从而从定义函数的不同位置调用函数

没有简单可靠的方法来检测你从哪里被呼叫,但这种情况通常并不常见。一般来说,最好避免跨文档函数调用,因为存在许多令人讨厌的陷阱。window.postMessage将来应该会减少对它的需要。

包含此js文件的HTML文件很简单,它只是当前文档的地址。location.href

如果要获取URL的特定部分,例如路径名的最后一部分:

var filename= location.pathname.split('/').pop();
调用函数的HTML页面是一个稍微不同的命题,因为在跨文档脚本世界中,您可以将函数从一个窗口传递到另一个窗口,从而从定义函数的不同位置调用函数


没有简单可靠的方法来检测你从哪里被呼叫,但这种情况通常并不常见。一般来说,最好避免跨文档函数调用,因为存在许多令人讨厌的陷阱。window.postMessage将来应该可以减少对它的需求。

+1,我希望我现在没有浪费时间格式化他的代码,哈哈-+1.答案很简单@UICodes:当执行JS代码时,它作为包含它的任何文件的一部分运行。因此,获取当前文档地址将为您提供包含它的文件。lol,对不起,安迪的头!抱歉,Senthil,我让答案变得不那么简单了,因为标题中的问题与正文中的问题有微妙的不同…+1,我希望我现在没有浪费时间格式化他的代码lol-+1.答案很简单@UICodes:当执行JS代码时,它作为包含它的任何文件的一部分运行。因此,获取当前文档地址将为您提供包含它的文件。lol,对不起,安迪的头!对不起,森蒂尔,我让答案变得不那么简单了,因为标题中的问题与正文中的问题有微妙的不同。。。