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

  • Amena

    Amena

    15 Kasım 2006
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011