使用不同的变量值多次在外部javascript文件中执行$(document).ready()中的代码

时间:2014-11-01 18:39:22

标签: javascript jquery

如何运行一个外部javascript文件,该文件在$(document).ready()事件上执行多次代码,每次都有不同的自身局部变量值?

由于$(文档).ready()事件中的代码在DOM完全加载时执行,因此代码警告" bar"两次。

external_script.js:

$(document).ready(function(){
    var local_var = global_var;
    alert( local_var );
});

的index.html:

<script>global_var = "foo";</script>
<script src="external_script.js"></script>

<script>global_var = "bar";</script>
<script src="external_script.js"></script>

我可以在第二次调用external_script.js时实现它,它会提示不同的值吗?

1 个答案:

答案 0 :(得分:1)

  

您正在尝试使用全局变量进行丑陋的副作用黑客攻击。请修改您的代码,使其成为一个函数,接受一个参数,当文档准备就绪时,您可以使用不同的参数调用两次。

谢谢,这正是我所需要的。现在我的代码看起来像这样:

<强> external_script.js:

function do_stuff( local_var ) {
    alert( local_var );
}

<强>的index.html:

<script src="external_script.js"></script>
<script>
    $(document).ready(function(){
        do_stuff( "foo" );
        do_stuff( "bar" );
    });
</script>