Корисник:Automatik/silent fail storage.js
Напомена: По објавувањето може да треба да го исчистите меѓускладот (кеш) на прелистувачот за да можете ги видите промените.
- Firefox / Safari: Држете Shift и стиснете на Превчитај (Reload) или притиснете Ctrl-F5 или Ctrl-R (⌘-R на Mac);
- Google Chrome: Притиснете Ctrl-Shift-R (⌘-R на Mac)
- Internet Explorer / Edge: Држете Ctrl додека притискате на Refresh или притиснете Ctrl-F5.
- Opera: Стиснете на Ctrl-F5.
// Copied from sv.wikt ([[sv:MediaWiki:Gadget-silent fail storage.js]])
// Local storage wrapper: the same as local storage, but fails silently if it
// is not supported.
window.silentFailStorage = (function () {
try {
// Will throw if localStorage isn't supported or if it's disabled
var l = window.localStorage,
val = l.getItem('a');
l.setItem('a', 'b');
if (l.getItem('a') === 'b') {
// it works
if (val !== null)
l.setItem('a', val);
else
l.removeItem('a');
return l;
}
} catch (e) {
}
function noop() {}
function rnull() { return null; }
return {
getItem: rnull,
setItem: noop,
removeItem: noop,
clear: noop,
key: rnull,
length: 0
};
})();