ClipboardItem: supports() 静态方法
ClipboardItem 接口的 supports() 静态方法用于判断给定的 MIME 类型 是否被剪贴板支持,如果支持则返回 true,否则返回 false。
请注意,Clipboard API 要求支持纯文本、HTML 和 PNG 文件。supports() 方法对这些 MIME 类型始终返回 true,因此测试它们是不必要的。
语法
js
supports(type)
参数
返回值
如果给定的 MIME 类型被剪贴板支持,则返回 true,否则返回 false。
示例
将图像写入剪贴板
以下示例获取一个 SVG 图像,将其表示为 Blob,然后将其写入剪贴板。
我们在获取图像并使用 clipboard.write() 写入之前,使用 supports() 检查剪贴板是否支持 "image/svg+xml" MIME 类型。我们还将整个函数体包装在 try...catch 语句中,以捕获任何其他错误,例如 ClipboardItem 本身不受支持。
js
async function writeClipImg() {
try {
if (ClipboardItem.supports("image/svg+xml")) {
const imgURL = "/my-image.svg";
const data = await fetch(imgURL);
const blob = await data.blob();
await navigator.clipboard.write([
new ClipboardItem({
[blob.type]: blob,
}),
]);
console.log("Fetched image copied to clipboard.");
} else {
console.log("SVG image not supported by clipboard");
}
} catch (err) {
console.error(err.name, err.message);
}
}
规范
| 规范 |
|---|
| Clipboard API 和事件 # dom-clipboarditem-supports |
浏览器兼容性
加载中…