将javascript变量传递给其他网站上的javascript

时间:2015-04-25 23:05:19

标签: javascript

是否可以将javascript变量传递给另一个站点上的脚本? 我想做这样的事情:

此代码位于www.myfirstsite.net上的页面中:

<script>
   var ID = 'randomstring';
</script>
<script src="http://www.mysecondesite.net/processingscript.js"></script>

如何在mysecondsite.net上的脚本中读取var ID?

更新: 我的问题是错误的,正如@ vihan1086和其他人的有用答案中所解释的那样。

3 个答案:

答案 0 :(得分:1)

在您的其他脚本中,ID已经存在,您可以使用它。

答案 1 :(得分:1)

Javascript在附加到您网页的环境中运行,因此只要您不更改页面,您就可以设置变量并包含可以访问它们的其他脚本。

所以你提议的应该工作

但是你应该知道从其他网站运行脚本可能被视为危险,因此有些导航器/插件禁止...所以你应尽量避免使用它(通过在你的网站上提供脚本的副本) )

答案 2 :(得分:1)

为什么从不那样做

你应该从不声明这样的变量,它已被描述为here

然后是什么?

在一个页面上,执行:

window.globals = {};
window.globals.my_variable = 'ABC';

在脚本上添加:

var globals = window.globals;
globals.my_variable;//Gets 'ABC'

<小时/> 这将使所有变量在global位置安全。然后我们可以同时获得所有全局变量,从而提高速度。

不要忘记将所有代码包装在以下内容中:

(function() {

//Code here

})();

功能

为了使这更容易,我做了函数:

setSharedVar (name, value) {
    if (!"globals" in window) {
        window.globals = {};
    }
    window.globals[name] = value;
}

getSharedVar (name) {
    if (!"globals" in window) {
        window.globals = {};
        return null;
    } else if (!name in window.globals) {
        return null;
    } else {
        return window.globals[name];
    }
}

实施例

脚本1:

setSharedVar('id', 5);

脚本2:

if (getSharedVar('id') === 5) {
    alert('Success!');
}
  

提醒成功!'