WebGL应用程序的Javascript浏览器检测

WebGL应用程序的Javascript浏览器检测,webgl,browser-detection,browser-feature-detection,Webgl,Browser Detection,Browser Feature Detection,好的,我想做浏览器检测;我知道每个人都说不要。但原因如下。我有一个WebGL应用程序/页面。检测WebGL很容易。但是如果WebGL不受支持,我想向用户提供下一步要做什么的信息。为此,我需要浏览器、平台和版本。所以我明白为什么每个人都说要使用特征检测,但在这种情况下,如果我想给出指示,我必须了解浏览器 例如,对于Firefox,我会告诉用户更改about:config设置,而对于Safari,它位于开发人员菜单上(如果内存可用) 如果有更好的办法,我洗耳恭听。如果没有,是否有一个可靠的浏览器检测

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

例如,对于Firefox,我会告诉用户更改about:config设置,而对于Safari,它位于开发人员菜单上(如果内存可用)

如果有更好的办法,我洗耳恭听。如果没有,是否有一个可靠的浏览器检测库,可以持续维护并处理浏览器报告方式中的所有边缘情况或不一致情况。

查看此网站:

在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");
    }
}

这就是你必须做的一切。

谢谢。但我知道如何检查WebGL。问题的关键是我正在寻找浏览器检测,这样我就可以移动到一个页面,解释浏览器的WebGL选项。例如,这通常是作为一个答案给出的:但这根本检测不到iPad,并且错误识别了iPad上的Chrome。我正在寻找一个图书馆,保持最新的,所以我不必调整它的所有时间。实际上,我正在使用上面的链接,只是找到各种各样的机器,并指出哪里不起作用,然后进行修复。我想要一个更好的解决方案。