我可以在jQuery中创建全局函数而无需对变量进行任何更改吗?

时间:2014-03-13 11:27:23

标签: jquery global-variables

我在php文件中有这段代码:

<script type="text/javascript" src="/js/party.js"></script>

<script type="text/javascript">
    loadParty('<?php echo $party_id;?>');    
});
</script>

party.js - 文件中存在一个名为loadParty()的函数。

使用上面的代码,loadParty()被调用 - 但没有任何反应,因为loadParty()未被初始化。

外部party.js档案......

$(document).ready(function($){
    //code...

    function loadParty(id) {
         //code for loading party
    }
}

在萤火虫中我得到 ReferenceError loadOutfit未定义。

我可以将loadParty()定义为全局吗?

我试过这个......

$.loadParty = loadParty(party_id) {
    //code...

    //party_id is set as unused (by my IDE), and the function do 
    //not work work at all. My guess is that the variables inside a global function
    //must be global as well??? 
}

有没有任何方法可以全局定义一个javascript函数(loadParty()),而不需要在其中包含变量?)。我唯一想做的就是像这样调用js-function:loadParty(4);(来自php文件)

1 个答案:

答案 0 :(得分:1)

DOM ready($(document).ready(function(){)处理程序是一个匿名函数,因此您的loadParty()函数具有local scope

所以你不能在DOM ready

之外调用它

<小时/> 尝试

您可以删除DOM ready并将脚本文件放在body标签的底部。