当我在Android原生浏览器中运行HTML5兼容性测试时,它会看到IndexedDB支持标记为“Prefixed”,而在Chrome和其他标记中则标记为“Yes”。 我了解Chrome最新版本完全支持IndexedDB,但IndexedDB支持“前缀”是什么意思?
答案 0 :(得分:1)
根据Mozilla页面:
https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Using_IndexedDB
"由于规范仍在不断发展,因此IndexedDB的当前实现隐藏在浏览器前缀下。在规范固化之前,浏览器供应商可能具有标准IndexedDB API的不同实现。但是一旦达到对标准的共识,供应商就会在没有前缀标签的情况下实现它。实际上一些实现已经删除了前缀:Internet Explorer 10,Firefox 16,Chrome 24.当他们使用前缀时,基于Gecko的浏览器使用moz前缀,而基于WebKit的浏览器使用webkit前缀。"
根据约什的评论: 使用类似以下语句的内容来确保兼容性:
window.indexedDB = window.indexedDB || window.webkitIndexedDB;
角色' webkit'是前缀。您可能需要在Android中使用它们,但您不再需要在Chrome中使用它们(几年前就已经使用过它们)