2014-03-13 57 views
0

我有這樣的代碼在一個php文件:我可以在jQuery中創建全局函數,而無需對變量進行任何更改嗎?

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

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

party.js - 文件名爲loadParty()存在功能。

使用上面的代碼,loadParty()被稱爲 - 但沒有發生,因爲loadParty()沒有initalized。

外部party.js文件...

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

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

在Firebug我得到的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??? 
} 

是否有全局(loadParty())訪問定義JavaScript函數,而無需裏面的變量是什麼辦法?)。我想要做的唯一一件事就是調用JS功能如下:loadParty(4);(從PHP文件)

回答

1

DOM ready($(document).ready(function(){)處理程序是一個匿名函數讓你loadParty()功能有local scope

所以你不能把它叫做DOM ready


外嘗試

您可以刪除DOM準備好,把你的腳本文件,在body標籤的底部。

+1

啊,好的。非常感謝! :-)我在DOM之外移動了我的實際函數,因爲在函數本身被使用之前它已經被初始化並不重要:-)它在DOM準備好之後首先被使用...感謝讓我走上正軌! :-) – bestprogrammerintheworld

+0

@bestprogrammerintheworld很高興幫助:) –

相關問題