0

好的,我想做浏览器检测;我知道每个人都说不要。但这就是原因。我有一个 WebGL 应用程序/页面。检测 WebGL 很容易。但是如果不支持 WebGL,我想向用户提供下一步该做什么的信息。为此,我需要浏览器、平台和版本。所以我明白为什么每个人都说要使用特征检测,但在这种情况下,如果我想给出说明,我必须了解浏览器。

例如,对于 Firefox,我会告诉用户更改 about:config 设置,而对于 Safari,它位于开发人员菜单上(如果没有记错的话)。

如果有更好的方法,我会全力以赴。如果没有,是否有一个像样的浏览器检测库,可以持续维护并处理所有边缘情况或浏览器报告方式的不一致。

4

1 回答 1

1

看看这个网站:http ://www.khronos.org/webgl/wiki/FAQ

在 get.webgl 上,您有一个名为疑难解答的子页面。
该页面检测您的浏览器、操作系统和其他。
当它已经完成时,您不必自己编写它。

检测:

if(!window.WebGLRenderingContext) {
    // the browser doesn't even know what WebGL is
    alert("webgl not supported, visit http://get.webgl.org");
}
else {
    var canvas = document.getElementById("canvasID");
    var context = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
    if(!context) {
        // browser supports WebGL but initialization failed
        alert("webgl is supported but here is another problem, visit http://get.webgl.org/troubleshooting");
    }
}

这是你必须做的一切。

于 2013-09-24T20:19:09.680 回答