我有一個web應用程序,在所有的桌面瀏覽器和移動設備上都表現良好,但是自從IOS 7遇到了一個奇怪的問題。奇怪的Javascript IOS 7問題
例子:
我設置像
(function(){
//CONSTRUCTOR*
sampleObject= new function(){
alert("loaded constructor "+ new Date().getTime()); //only outputted once
//swfobject dom load event
}
...//functions and propeties related to sampleObject
})();
//ASSIGNING THE OBJECT
sampleObject = new sampleObject();
alert("finished assigning object "+ new Date().getTime()); //only outputted once
發行對象:
在iOS 7似乎隨機丟失sampleObject是什麼,而不是恢復到什麼在構造函數*的代碼片段中。因此,例如,我一直在調試它的時間間隔,我在我的對象上調用一個公共方法,如sampleObject.getResource(「a」);
而且痕跡都回來了,如:
sampleObject = [Object] //Correct
sampleObject = [Object]
然後隨機它這樣做:
sampleObject = function(){
//swfobject dom load event
}
這基本上是在構造函數中的代碼*。
這進而導致我的代碼拋出一個引用錯誤的公共屬性/方法我使用貫穿如的getResource未定義...
事情嘗試:
- 代碼只會啓動一次(警報會以單個日期/隨機字符串觸發一次)
- I確定由於此問題而發生錯誤的位置,但是儘管代碼明顯失敗,但它並未進入捕獲。
- 試圖在不同的IOS版本中,所有罰款除了IOS 7
*構造函數 - 不知道這是否被列爲一個構造函數,但是那是什麼,在我看來。
**不幸的是,我不能公開發布我的代碼,因爲它是商業項目的一部分,並且相當廣泛....但是有什麼建議或者有人有過類似的問題嗎?
謝謝!
不知道爲什麼會出現問題,但爲什麼您爲類和實例使用相同的名稱?這簡直令人困惑。 – Barmar
你真的會這麼叫兩次嗎?第二個電話不應該工作。 – bfavaretto
它的東西,我已經繼承,因此不知道其根本原因,但它的作品,並已爲所有主流瀏覽器和移動瀏覽器做到現在...因此,我的混淆 – Bynho