2014-10-02 137 views

回答

2

已知問題。其他iOS8 IndexedDB錯誤。

0

IndexedDB的是成功的一半支持科爾多瓦!他們只有一個只讀數據庫(完全以沒用) 但是你可以做一個變通方法,通過使用填充工具例如Polyfill Indexeddb

的填充工具的問題iOS8上的情況下,即INDEXDB墊片檢測,即INDEXDB安裝,但不知道它們是隻讀版本,它們使用window.indexdb而不是墊片。因此你必須強制使用indexshim而不是window.indexeddb。

打開pollyfill 的代碼中找到的代碼塊:

if ((typeof window.indexedDB === "undefined" || poorIndexedDbSupport) && typeof window.openDatabase !== "undefined") { 
    window.shimIndexedDB.__useShim(); 
} 
else { 
    window.IDBDatabase = window.IDBDatabase || window.webkitIDBDatabase; 
    window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction; 
    window.IDBCursor = window.IDBCursor || window.webkitIDBCursor; 
    window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange; 
    if(!window.IDBTransaction){ 
     window.IDBTransaction = {}; 
    } 
    /* Some browsers (e.g. Chrome 18 on Android) support IndexedDb but do not allow writing of these properties */ 
    try { 
    window.IDBTransaction.READ_ONLY = window.IDBTransaction.READ_ONLY || "readonly"; 
    window.IDBTransaction.READ_WRITE = window.IDBTransaction.READ_WRITE || "readwrite"; 
    } catch (e) {} 
} 

,並替換爲:

window.shimIndexedDB.__useShim(); 

可以使用索引資料與window.shimIndexedDB

相關問題