javascript,从脚本内部获取脚本路径

时间:2011-03-23 14:02:51

标签: javascript

是否可以获取Javascript服务器路径?

例如,我有一个目录中的javascript文件,并且在该目录中有一些我想要“发布”到的php脚本。

当我在我的主页中包含javascript文件时

<script type="text/javascript" src="assets/js/some.js"></script> 

我无法使用相对路径访问位于assets / js /目录中的/post.php这样的文件,因为javascript未在主页所在的目录中“运行”。

显然,我可以指定路径,但我试图想出一种更健壮的方式。

我知道你可以获得“脚本”标签并获取文件的网址,我可以从那里开始工作,但我不知道这样的功能是否存在,那只会告诉你。

谢谢!

2 个答案:

答案 0 :(得分:0)

创建一个由bla.php提供的脚本,并将其放在some.js

之前
<script type="text/javascript" src="bla.php"></script> 

在bla.php中,渲染一个javascript类并将数据存储在其中。 即

function MyConstants() {
    this.HELLO = "hello";
    this.POST_PATH = "/etc.php";
}

您可以通过以下方式访问常量(或其他任何内容):

var consts = new MyConstants();
alert(consts.HELLO);

希望这有帮助! : - )

答案 1 :(得分:0)

您可以尝试使用跨浏览器stack tracer来获取当前文件名

然而,在许多情况下,您的想法可能会中断,例如,如果您添加一个JS cacher,它将所有必需的JS文件合并为一个并压缩它们。

我想说一个更聪明的方法就是有一个原则,你可以用它找出你的php skripts的网址,比如RubyOnRails有routes