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

  • curioustravelers

    curioustrave

    12 AĞUSTOS 2006
  • jpmkm1

    jpmkm1

    4 NİSAN 2008
  • Schmittastic Jr.

    Schmittastic

    19 Mart 2013