modernizr和pdf插件检测

cob*_*nks 5 pdf web-applications modernizr

现代化器可以检测浏览器是否安装并启用了pdf插件?我在Web应用程序的iframe中显示pdf.当pdf插件不存在时,我从dom客户端删除iframe.我正在使用一些笨重的javascript来进行检测,并希望用更强大/标准的东西替换它并遇到了modernizr.任何人都知道这是否可行?

小智 6

看看Modernizr文档,我没有看到任何检测pdf插件的方法,但你可以检查浏览器可以处理的mimeTypes.将其写为Modernizr测试,您可以执行以下操作:

Modernizr.addTest('pdf', function(){
    var mimes = navigator.mimeTypes;
    for (var i = 0, i_len = mimes.length; i < i_len; i++){
        if (mimes[i].type === 'application/pdf')
            return true;
    }
    return false;
});
Run Code Online (Sandbox Code Playgroud)

然后,您应该能够通过值检测浏览器是否具有pdf插件 Modernizr.pdf