diff --git a/r2/r2/public/static/js/analytics.js b/r2/r2/public/static/js/analytics.js index 680f2c887..be6144a31 100644 --- a/r2/r2/public/static/js/analytics.js +++ b/r2/r2/public/static/js/analytics.js @@ -113,10 +113,10 @@ r.analytics = { } r.analytics.breadcrumbs = { - hasSessionStorage: 'sessionStorage' in window, selector: '.thing, .side, .sr-list, .srdrop, .tagline, .md, .organic-listing, .gadget, a, button, input', init: function() { + this.hasSessionStorage = this._checkSessionStorage() this.data = this._load() var refreshed = this.data[0] && this.data[0]['url'] == window.location @@ -129,6 +129,17 @@ r.analytics.breadcrumbs = { }, this)) }, + _checkSessionStorage: function() { + // Via modernizr.com's sessionStorage check. + try { + sessionStorage.setItem('__test__', 'test') + sessionStorage.removeItem('__test__') + return true + } catch(e) { + return false + } + }, + _load: function() { if (!this.hasSessionStorage) { return [{stored: false}]