如何在定义js文件后为外部javascript文件设置变量?

时间:2012-09-11 23:03:35

标签: javascript jquery

我正在使用jQuery Mobile Ajax导航功能,而且我需要更改外部js文件中定义的变量,所以我不能将我的定义置于我加载了那个js文件......

那么,如何在定义js文件后更改外部javascript文件的变量值?

(外部js文件包含事件)


所以这个问题是重复that question


更新

我的JS文件包含事件,如下所示:$(document).on('mousemove','#main',function() { /*something*/} );

我需要那个变量。是否可以将变量传递给它?

我尝试过简单地更改变量i = 5;,但我收到了未定义的错误。


更新2

外部JS文件适用于几乎相同的页面,但稍有不同,只有一两个参数。

我只是想将参数传递给该JS文件。可能吗?怎么样?

2 个答案:

答案 0 :(得分:4)

我们假设http://www.example.com/external.js定义了您想要更改的变量foo

<script src="http://www.example.com/external.js"></script>
<script type="text/javascript">
    foo = "my new value";
</script>

这假设external.js在全局范围内定义了foo。如果它是在匿名函数或类似函数中定义的,您将无法更改该值。

答案 1 :(得分:1)

根据您正在做的事情,您可以设置变量并且它将起作用。例如:

// JS file
blah = "Hello";
function doSomething() {
    alert(blah);
}

// HTML file
blah = "I'm a fish";
doSomething(); // alerts "I'm a fish";

或者,将变量作为参数传递给相关函数,而不是使用全局变量。