SORU
28 Ocak 2013, PAZARTESİ


Safari ile html5 localStorage hata: "QUOTA_EXCEEDED_ERR: 22 özel Durum DOM: Bir girişim kotasını aştı depolama için bir şey eklemek için yapıldı&."

Benim özel web tarama safari: ios javascript hataları var

JavaScript:error
undefined
QUOTA_EXCEEDED_ERR:DOM Exception 22:An attempt was made to add something to storage...

benim kod:

localStorage.setItem('test',1)

CEVAP
28 Ocak 2013, PAZARTESİ


Görünüşe göre bu, tasarım gereğidir. Safari (OS X veya iOS) gizli tarama modundayken, localStorage kullanılabilir gibi görünüyor, ama setItem aramaya çalışırken, bir özel durum atar.

store.js line 73
"QUOTA_EXCEEDED_ERR: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota."

Ne pencere nesne hala genel ad localStorage ortaya çıkaran, ama setItem, çağırdığınızda bu özel durum. removeItem herhangi bir çağrı göz ardı edilir.

En basit düzeltme henüz bu çapraz tarayıcı test etmedim, ancak () işlevi isLocalStorageNameSupported() de bazı değer ayarlayabilirsiniz test etmek için değiştirmek için olacağına inanıyorum.

https://github.com/marcuswestin/store.js/issues/42

function isLocalStorageNameSupported() 
{
    var testKey = 'test', storage = window.sessionStorage;
    try 
    {
        storage.setItem(testKey, '1');
        storage.removeItem(testKey);
        return localStorageName in win && win[localStorageName];
    } 
    catch (error) 
    {
        return false;
    }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Howard Pinsky

    Howard Pinsk

    6 AĞUSTOS 2006
  • JorteexHD

    JorteexHD

    20 NİSAN 2012
  • newport83

    newport83

    19 HAZİRAN 2006