我正在使用jQuery Mobile Ajax导航功能,而且我需要更改外部js文件中定义的变量,所以我不能将我的定义置于我加载了那个js文件......
那么,如何在定义js文件后更改外部javascript文件的变量值?
(外部js文件包含事件)
所以这个问题是不重复that question。
我的JS文件包含事件,如下所示:$(document).on('mousemove','#main',function() { /*something*/} );
我需要那个变量。是否可以将变量传递给它?
我尝试过简单地更改变量i = 5;
,但我收到了未定义的错误。
外部JS文件适用于几乎相同的页面,但稍有不同,只有一两个参数。
我只是想将参数传递给该JS文件。可能吗?怎么样?
答案 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";
或者,将变量作为参数传递给相关函数,而不是使用全局变量。