相关疑难解决方法(0)

如何获取当前正在执行的javascript代码的文件路径

我正在尝试做一些类似C #include "filename.c"或PHP的东西,include(dirname(__FILE__)."filename.php")但是在javascript中.我知道我可以这样做,如果我可以从URL加载一个js文件(例如标签的src属性中给出的URL).有什么方法可以让javascript知道吗?

或者,是否有任何好方法从同一个域动态加载JavaScript(不知道具体的域)?例如,假设我们有两个相同的服务器(QA和生产),但它们显然具有不同的URL域.有没有办法做一些像include("myLib.js");myLib.js将从加载它的文件的域加载?

对不起,如果那有点令人困惑.

javascript include absolute-path src

57
推荐指数
6
解决办法
9万
查看次数

获取当前正在执行的JavaScript代码的文件路径,以获取动态加载的跨域JavaScript文件

我需要
在我的网站http://jsbookmarklets.com/中为bookmarklet动态加载跨域JavaScript 文件


解决方案应满足:

  • 获取当前文件的路径
  • 当前网页的域和执行中的JS文件是不同的
  • 解决方案应该是跨浏览器
  • 可能会异步加载多个脚本(这就是下面提到的相关问题不合适的原因)


我想获取当前正在执行的JavaScript代码的文件路径,以便动态加载更多资源(更多CSS文件和JS文件,如自定义代码和jQuery,jQuery UI和Ext JS库),这些文件存储在与JavaScript相同/相对的文件夹中小书签.


以下方法不适合我的问题:

var scripts = document.getElementsByTagName("script");
var src = scripts[scripts.length-1].src;
alert("THIS IS: "+src);
Run Code Online (Sandbox Code Playgroud)


相关问题不符合我的问题:

javascript jquery bookmarklet cross-domain

5
推荐指数
1
解决办法
4121
查看次数

当脚本来自另一个域时获取 Javascript 域

我正在编写一个应该跨域工作的脚本。我尝试包含来自另一个域的一个脚本,然后让该脚本包含来自同一域的其他脚本

示例:域 1 - www.mydomain.com

<html>
    <head>
       <script type="text/javascript" src="http://www.example.com/app.js"></script>
    </head>
</html>
Run Code Online (Sandbox Code Playgroud)

示例应用程序 JS

var imported = document.createElement('script');
imported.src = window.location.host + 'config.js';
document.head.appendChild(imported);

var imported = document.createElement('script');
imported.src = window.location.host + 'stuff.js';
document.head.appendChild(imported);
Run Code Online (Sandbox Code Playgroud)

问题是 window.location.host 给出了脚本下载到的域: www.mydomain.com 。我想要脚本当前所在的域,在此示例中是 www.example.com ?

这可以做到吗?请不要使用 JQuery。

javascript cross-domain

5
推荐指数
1
解决办法
3147
查看次数