浏览器供应商可能会在扩展正式批准之前(但仅在扩展处于草案阶段时)支持这些扩展。在这种情况下,其名称可以以供应商前缀(MOZ_、WEBKIT_ 等)开头,或者只有在切换浏览器首选项后才能使用该扩展。
如果您希望使用最前沿的扩展,并希望在批准后继续使用(当然,假设扩展不会以不兼容的方式更改),那么您需要查询规范扩展名称和供应商扩展名称。例如
jsconst ext =
gl.getExtension("OES_vertex_array_object") ||
gl.getExtension("MOZ_OES_vertex_array_object") ||
gl.getExtension("WEBKIT_OES_vertex_array_object");
请注意,供应商前缀已被弃用,因此大多数浏览器通过功能标记而不是供应商前缀来实现实验性扩展。
功能标记为
Firefox 中的 webgl.enable-draft-extensions
Chromium 基于浏览器的浏览器(Chrome、Opera)中的 chrome://flags/#enable-webgl-draft-extensions。