chrome.clipboard

说明

提供 chrome.clipboard API 是为了让用户能够访问剪贴板数据。在开放式 Web 替代方案推出之前,这是针对 ChromeOS 平台应用的临时解决方案。一旦开放式 Web 解决方案可用,此 API 就会被弃用,这可能是在 2017 年第 4 季度。

权限

clipboard

可用性

开发渠道 仅限 ChromeOS

类型

AdditionalDataItem

属性

  • 数据

    字符串

    附加数据项的内容。如果 type 为“textPlain”,则为纯文本字符串;如果 type 为“textHtml”,则为标记字符串。数据大小不得超过 2MB。

  • 类型

    其他数据项的类型。

DataItemType

枚举

"textPlain"

“textHtml”

ImageType

支持的图片类型。

枚举

“png”

“jpeg”

方法

setImageData()

Promise Chrome 57 及更高版本
chrome.clipboard.setImageData(
  imageData: ArrayBuffer,
  type: ImageType,
  additionalItems?: AdditionalDataItem[],
  callback?: function,
)
: Promise<void>

将图片数据设置到剪贴板。

参数

  • imageData

    ArrayBuffer

    Chrome 60 及更高版本

    编码后的图片数据。

  • 类型

    传递的图片类型。

  • additionalItems
    Chrome 60 及更高版本

    用于描述图片数据的其他数据项。如果出现错误,系统会调用回调,并将 chrome.runtime.lastError 设置为错误代码。需要剪贴板和 clipboardWrite 权限。

  • callback

    函数 可选

    callback 参数如下所示:

    () => void

返回

  • Promise<void>

    Chrome 91 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

事件

onClipboardDataChanged

Chrome 56 及更高版本
chrome.clipboard.onClipboardDataChanged.addListener(
  callback: function,
)

当剪贴板数据发生变化时触发。需要剪贴板和 clipboardRead 权限才能向 chrome.clipboard.onClipboardDataChanged 事件添加监听器。此事件触发后,可通过调用 document.execCommand('paste') 来获取剪贴板数据。

参数

  • callback

    函数

    callback 参数如下所示:

    () => void