为什么 document.execCommand("paste") 在 Google Chrome 中不起作用?

2023-11-27

我的扩展有问题。我想从剪贴板粘贴数据。

到目前为止,我已经得到了这个:

function pasteAndGo()
{
    document.execCommand('paste')
    alert("Pasted")
}

出现警报,但没有粘贴任何内容。

我有一种感觉document需要改变的部分,但我不知道该怎么做。有任何想法吗?


Calling document.execCommand("paste")出于安全考虑,“合理”的浏览器不支持它,因为它可能使脚本能够从剪贴板读取敏感数据(如密码)。

这是兼容性矩阵 of document.execCommand("...")关于剪贴板事件:

"copy" "paste" "cut"
IE OK OK n/a
Edge OK n/a OK
Firefox OK n/a OK
Chrome OK n/a OK

我对此的两分钱:

  • 的行为Edge, Firefox and Chrome是“合理的”,因为它们阻止从剪贴板粘贴/读取数据。它们确实启用了剪切,因为剪切只是复制然后删除。
  • 的行为IE对我来说没有意义,因为它启用“有风险的”粘贴,但不执行剪切事件。

You can 特征检测可能的命令使用document.queryCommandSupported method.

Edit:根据MDNdocument.queryCommandSupported现已弃用,不应再使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 document.execCommand("paste") 在 Google Chrome 中不起作用? 的相关文章

随机推荐

  • Objective-c 中是否有等效的 sqlite .dump ?

    我正在尝试开发一个 iOS 应用程序 该应用程序允许用户使用 GameKit 通过蓝牙同步他们的 sqlite 数据库 有没有办法使用许多 sqlite Objective C 库中的任何一个在 sqlite shell 上执行相当于 du
  • RVO 应何时启动?

    从下面的代码来看 如果发生了RVO 我希望看到2个地址指向同一位置 但事实并非如此 我的编译器是MS VC9 0 include
  • blob 在 ios 上不接受 Uint8Array

    我尝试创建一个 Blob 对象并将 Uint8Array 传递给它的构造函数 它在 Windows 上的 chrome 和 firefox 上运行良好 然而 在 ios 上的 chrome 和 safari 中 Blod 不包含 Uint8
  • 为什么Java默认只初始化类变量而不初始化局部变量?

    我正在学习 Java 中的链表 我有三个文件Main java List java and Node java 当我这样做时 我遇到了一个问题 为什么我应该初始化在方法中声明的局部变量 而不是在类中声明的类变量 In the first p
  • Visual Lisp:如何调用外部 C++ DLL 中的函数

    我有一个我编写的 C dll 本机的 不是 net 并且我想使用 Visual Lisp 中的功能 任何人都可以向我指出如何执行此操作的示例 或者至少要阅读哪些文档 我通过为我的 dll 编写一个 activex COM 包装器解决了这个问
  • 处理 AWS PHP SDK 2 中的错误

    如果我尝试从 S3 存储桶中获取不存在的对象 Amazon PHP SDK 2 会给我一个非常难看的错误 对我来说很方便 但对最终用户来说毫无意义 E g s3 aws gt get s3 result s3 gt getObject ar
  • JPA Glassfish 数据库更新问题

    我在 Glassfish v3 0 1 上部署了一个应用程序 它从数据库中的表中读取事件 一旦准备好 它会将它们标记为已处理 当尝试调用执行更新的方法时 我收到一个奇怪的错误 我无法解释 Override TransactionAttrib
  • AWS Glue 爬网程序创建分区和文件表

    我有一个非常基本的 s3 设置 我想使用 Athena 对其进行查询 数据全部存储在一个存储桶中 并组织到年 月 日 小时文件夹中 data 2018 01 01 01 file1 json file2 json 02 file3 json
  • 在 Bash 中递归更改文件扩展名

    我想递归地遍历一个目录并更改特定扩展名的所有文件的扩展名 例如 t1 to t2 执行此操作的 bash 命令是什么 Use find name t1 exec bash c mv 1 1 t1 t2 如果你有rename可用然后使用one
  • Python:pysqlite 库不支持 C 扩展加载

    我正在尝试让 Spatialite 与我的 django 应用程序一起使用 但是 我遇到了以下问题 raise ImproperlyConfigured The pysqlite library does not support C ext
  • 当服务器处于无限循环并且客户端停止时会发生什么?

    我试图弄清楚服务器和客户端之间的 交谈 是如何完成的 因此 当服务器生成无限循环时 echoing hello br 例如 当客户停止或点击 返回 时会发生什么 服务器如何知道循环已结束 或者它旁边是否有一个无限的进程 我可以在任何地方阅读
  • AngularJS 中的 ng-repeat 自动对焦

    我使用 ng repeat 获取多个电话号码 div div
  • 既然我们有了 ES6 Promise,还有理由使用 Q 或 BlueBird 这样的 Promise 库吗? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 在 Node js 添加了对 Promise 的原生支持之后 还有理由使用 Q 或 BlueBird 等库吗 例如 如果您正在启动一个新项目 并且假设在该项目中您没有任何使用这些库的依赖项
  • 通过 HTTP 使用 MSMQ。如何解决队列问题?

    我目前正在尝试将 MSMQ 与 C 和 NET 结合使用以实现 IPC 我试图理解它是如何工作的 但我对它很困惑访问 MSMQ 队列时路径名称和格式名称之间的差异 我在以下帖子中发现了一些类似的问题 通过 HTTP 的 MSMQ 调用未到达
  • C++ 未初始化的局部变量

    我有一个功能 VOID GetOSVersion PDWORD major PDWORD minor PDWORD build OSVERSIONINFO osver ZeroMemory osver sizeof OSVERSIONINF
  • 读取android资源文件夹中的CSV文件

    我正在 netbeans 中开发一个 Android 应用程序 我正在尝试使用 opencsv 读取 CSV 文件 当我将文件放入资源文件夹并尝试从那里读取它时 构建时出现错误 提示资源目录无效 我应该在哪里存储 csv 文件 以便每次应用
  • 是我个人的问题,还是 WPF 是一堆数据绑定和自定义 IValueConverters?

    说真的 似乎每次我想让我的 UI 元素相互交谈时 我最终都会编写一个新的自定义 IValueConverter 有人告诉我我做错了 拜托 例子 我希望仅当我的文本框包含有效的 URI 时才启用按钮 太棒了 是时候编写代码了UriIsVali
  • 防止某些字段被 .NET Azure Web Api 中的 PATCH 覆盖

    我正在创建一个带有 NET 后端的 Azure 移动服务 该后端使用 TableController ApiController 的子类 来处理 REST 请求 在我的 PATCH 方法中 我想限制允许更新的字段集 我有一个 Account
  • jQuery 计算子元素数量

    div ul li 29 li li 16 li li 5 li li 8 li li 10 li li 7 li ul div 我想统计一下总数 li 中的元素 div div 使用 jQuery 怎么可能做到这一点 children s
  • 为什么 document.execCommand("paste") 在 Google Chrome 中不起作用?

    我的扩展有问题 我想从剪贴板粘贴数据 到目前为止 我已经得到了这个 function pasteAndGo document execCommand paste alert Pasted 出现警报 但没有粘贴任何内容 我有一种感觉docum