在我的HTML代碼中,我已導入外部JS文件,也有自己的內聯JS代碼,並以我個人的js代碼,我需要調用對象的方法在外部js文件中定義。渲染後,源代碼如下所示:的Javascript調用另一個腳本標記的類方法失敗在IE
<script type="text/javascript">
// content of the extenral js file
...
var bar = {};
bar.foo = {};
...
bar.foo.class = {};
bar.foo.class.method = function() {...};
...
</script>
<script type="text/javascript">
// content of my own javascript code
...
function load() {
...
bar.foo.class.method();
...
}
...
</script>
對於框架我用我不能在一個地方做的兩個部分(即,或者兩者都是在外部js文件或者兩者都在我自己的直列js代碼)。現在,這段代碼可以在Firefox,Chrome和Safari中使用,但不適用於IE。該IE調試器顯示如下錯誤:「無法獲得屬性‘富’的值:對象爲null或undefined」
它看起來像無論是在第一標記定義的bar.foo.class是不可見第二個標籤或第二個標籤在第一個標籤(第一個標籤都是關於類定義,沒有真正的工作流)之前執行。
有誰知道如何解決這個在IE?謝謝!
第一個不能正常工作。第二個也不起作用。但有一件有趣的事情是,如果我使用你的第二個代碼,錯誤信息將是「bar is undefined」。請注意,在我自己的代碼中,錯誤代碼是「無法獲取屬性'foo'的值:null或undefined」。我認爲這表明變量'bar'被第二個標籤中的代碼識別,但不是它的屬性'foo'。也許我們可以看看爲什麼foo不被識別,而不是酒吧......但我仍然不知道如何解決這個問題...... – user1631973
我試圖提醒(酒吧)。在IE中它顯示「未定義」,而在所有其他中顯示「{object,object}」。所以我認爲問題仍然是第一個標籤中定義的'bar'無法被第二個標籤中的代碼識別... – user1631973