Soundcloud:检测缺少localStorage支持并通知用户

时间:2014-02-13 12:30:09

标签: javascript html5 local-storage soundcloud browser-feature-detection

最近,我无法访问Next Soundcloud。无论我尝试了哪个网址,都会出现一般错误页面,告诉我出了问题并推荐现代浏览器。

浏览器控制台表示访问window.localStorage时应用失败:

TypeError: localStorage is null

确实,我的Firefox配置中全局禁用dom.storage。可能有其他用户使用现代浏览器但禁用了dom.storage,因此可能会对此通用错误页面感到孤单。

我很欣赏类似警告框的信息,告知用户缺少对特定功能的支持。在dom.storage禁用/启用时尝试this fiddle。我想,它会在几分钟内实现,但会让用户体验更好。

那么,是否已经为Soundcloud计划了某种特定的错误页面?

1 个答案:

答案 0 :(得分:0)

通过阅读您的问题,我不清楚您是否要检查localStorage支持,或检查某人是否在Firefox中启用/禁用了dom.storage设置。

检查localStorage支持非常简单:

function hasLocalStorage() {
    return window.localStorage && !!window.localStorage.getItem
}

Modernizr是一个相当受欢迎的库,其中包含一系列测试和一些polyfill。

至于检查dom.storage,不,这是永远不可能的。如果网站能够从浏览器中读取设置,那将是严重的安全/隐私问题。最近几年,浏览器已经开始向服务器提供 less 信息,而不是更多 例如,请参阅this page

您可以做的最好的事情是检查localStorage支持,如果它不可用,请显示一个包含所有浏览器说明的帮助页面。