最近,我无法访问Next Soundcloud。无论我尝试了哪个网址,都会出现一般错误页面,告诉我出了问题并推荐现代浏览器。
浏览器控制台表示访问window.localStorage
时应用失败:
TypeError: localStorage is null
确实,我的Firefox配置中全局禁用dom.storage
。可能有其他用户使用现代浏览器但禁用了dom.storage
,因此可能会对此通用错误页面感到孤单。
我很欣赏类似警告框的信息,告知用户缺少对特定功能的支持。在dom.storage
禁用/启用时尝试this fiddle。我想,它会在几分钟内实现,但会让用户体验更好。
那么,是否已经为Soundcloud计划了某种特定的错误页面?
答案 0 :(得分:0)
通过阅读您的问题,我不清楚您是否要检查localStorage
支持,或检查某人是否在Firefox中启用/禁用了dom.storage
设置。
检查localStorage支持非常简单:
function hasLocalStorage() {
return window.localStorage && !!window.localStorage.getItem
}
Modernizr是一个相当受欢迎的库,其中包含一系列测试和一些polyfill。
至于检查dom.storage
,不,这是永远不可能的。如果网站能够从浏览器中读取设置,那将是严重的安全/隐私问题。最近几年,浏览器已经开始向服务器提供 less 信息,而不是更多
例如,请参阅this page。
您可以做的最好的事情是检查localStorage支持,如果它不可用,请显示一个包含所有浏览器说明的帮助页面。