如何检测是否支持clipboard.js

问题描述:

使用剪贴板插件http://zenorocha.github.io/clipboard.js/ 我可以通过编程知道该插件是否受支持或不在运行的浏览器上?这个想法是,如果插件不被支持,我想隐藏'复制到剪贴板'按钮。像如何检测是否支持clipboard.js

if(clipboard is not supported) { 
    $('.copy-btn').hide(); 
} 

东西,你可以document.queryCommandSupported所需执行的命令

if (!(document.queryCommandSupported && document.queryCommandSupported('copy'))) { 
    $('.copy-btn').hide(); 
} 
+0

document.queryCommandSupported('copy')在chrome中总是为false! – coure2011

+0

@ coure2011请参阅[**已知错误**](https://developers.google.com/web/updates/2015/04/cut-and-copy-commands?hl=en#known-bugs)这不是_always_错误,例如测试'document.addEventListener('mouseup',function(){console.log(document.queryCommandSupported('copy'))})''会导致'true'在点击后登录 –

+0

此外,通过[this thread](https ://code.google.com/p/chromium/issues/detail?id = 476508)看起来像_Google Chrome's_实现将在v48.0.2541.0中修复这些错误 –

你必须检查浏览器的版本是否大于或等于“浏览器支持”一节中提到的那些。

https://github.com/zenorocha/clipboard.js#browser-support

+1

检查浏览器通常是一个坏主意。他们改变。使用功能支持检查要好得多。即此功能在这里可用。 – Liam

您可以使用document.queryCommandSupported但也有一些已知的错误。这就是为什么我建议使用这个polyfill