我想了解以下場景,我已經在一個範圍內定義了一個函數,並且想要訪問另一個範圍。跨不同範圍訪問函數
我有兩個不同的JavaScript文件,helper.js和main.js,並且都具有自調用函數:
helper.js:
var outerShowData;
(function(){
var innerShowData = function(param1, param2){
alert("Data : "+ param1 +" - "+ param2);
}
outerShowData = innerShowData;
})();
main.js:
(function(){
outerShowData("alpha", "beta");
outerShowData("gamma", "theta");
})();
如果我首先在頁面中包含helper.js,然後再包含main.js,那麼在Firefox,Safari和Google Chrome中都可以完美實現。但它在IE8中不起作用。
任何人都可以指出我在這裏做錯了什麼?
我寫了自我調用函數,而不是弄髒了全局範圍。任何對這個方向的幫助都會對我有很大幫助。
在IE8中適合我。你可以製作一個[jsFiddle](http://jsfiddle.net/)來重現問題嗎? – Ryan 2012-08-03 20:34:47