用于HTTP客户端提示的Javascript测试客户端支持

时间:2016-09-01 02:46:56

标签: javascript html

是否可以使用javascript检测浏览器是否支持HTTP客户端提示?现在只有chrome似乎支持它:http://caniuse.com/#feat=client-hints-dpr-width-viewport

所以我考虑使用一些可以进行浏览器和版本检测的javascript库,如果浏览器是chrome和版本49或更晚,我认为该功能得到了支持。

我只是认为这个解决方案不是非常有效或聪明,考虑到HTTP客户端提示的功能很可能会在未来添加到更多浏览器中,然后我将不得不不断更新我的功能以反映这一点。

是否有一些简单的方法来测试给定浏览器是否支持客户端javascript的HTTP客户端提示?

谢谢!

1 个答案:

答案 0 :(得分:0)

可悲的是,检测浏览器是否支持此功能的唯一方法是检查浏览器的品牌和型号......这样的事情......

function canDoClientHint() {
    try {
        var chrome = window.navigator.userAgent.match(/\sChrome\/([0-9]+)\.[.0-9]+\s/)
        if ( chrome !== null ) {
            var version = parseInt(chrome[1])
            if ( isNaN(version) === false && version >= 46 ) {
                return true
            }
        }
    } catch(e) {
        return false
    }
    return false
}
canDoClientHint()

显然,这种代码已经过时,需要不断维护,直到您关注的所有浏览器都具有通常可用的功能,然后您可以删除它。不幸的是,你必须记得更新并删除它。