- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在使用 navigator.clipboard.writeText()
将元素中的值复制到剪贴板,但是,它似乎适用于除 iPhone X 和iPhone 6 Plus 在 Safari 中。
浏览器是最新的,根据 MDN,它们应该可以与这些版本的 safari 一起使用。该代码似乎适用于桌面、Android 和其他 IOS 设备(例如 iPhone 12)。
在 iPhone X 和 6 Plus 上,它会在控制台中的这两种设备上抛出一个 Promise 错误,并且也不会复制到剪贴板:
未处理的 Promise 拒绝:TypeError:undefined 不是对象(评估“navigator.clipboard.writeText”)
有没有人经历过类似的事情并且已经看到/提出了解决方案?谢谢!
代码片段:
const coupon = couponSelector.value;
if (notMissing(coupon) && coupon !== '') {
navigator.clipboard
.writeText(coupon)
.then(() =>
LOGGER.debug({}, `${LOGGER_PREFIX}: Promise Successful.Copied coupon: ${coupon}`),
)
.catch((e) => LOGGER.error({ e }, `${LOGGER_PREFIX}: Promise Failed:`));
}
最佳答案
参见 my answer on the post linked in Damian Demasi's answer , 为方便起见转载于此……
有security limitations on this API在(移动)Safari 中,其中之一是它必须在受 https
保护的站点上执行,因此不会在 localhost
上运行,例如:
- The API is limited to secure contexts, which means that
navigator.clipboard
is not present forhttp://
websites.- The request to write to the clipboard must be triggered during a user gesture. A call to
clipboard.write
orclipboard.writeText
outside the scope of a user gesture (such as"click"
or"touch"
event handlers) will result in the immediate rejection of the promise returned by the API call.[…]
关于javascript - navigator.clipboard.writeText() 不适用于特定的 IOS 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65582701/
我尝试使用 Clipboard 类粘贴一些复制的对象。 Public Class DogsZoo Public Property Dogs As List(Of Dog) Pub
每当我按下 Ctrl-Shift-C 时,我已经尝试了多种方法强制 xterm(版本 285 和 292)将选择复制到 CLIPBOARD 剪贴板。到目前为止,最有前途的方法是在 ~/.Xresour
我路过一篇关于 Microsoft 的 Clipboard.SetText() 方法的文章: Clipboard.SetText Method (String) 而且我意识到如果字符串为空 (""),
在我的项目中有一个用例:用户单击一个按钮,然后将一些数据复制到剪贴板以进行下一步。 复制的数据与单击的按钮相关,并存储在组件状态中。 我做了一些搜索,并找到了如下潜在的解决方案: function c
我正在使用我的应用程序在我的应用程序中添加“复制到剪贴板”功能。 我使用以下命令: methods: { copyToClipboard () { if (process.env.
我想将 Keith Hill 的 Get-Clipboard 和 Set-Clipboard 的 C# 实现转换为纯 PowerShell 作为 .PSM1 文件。 有没有办法像他在使用剪贴板时在 C
是否有任何工具可以在 Windows 中拥有更强大的剪贴板类型功能? 我正在使用 vs.net 2008(如果它内置了但我不知道?) 我曾经有这个工具,我在剪贴板中创建了许多可以使用快捷方式访问的项目
我正在通过 MSTSC 从笔记本电脑访问桌面。在 RDC session 中,我选择了允许访问打印机和剪贴板本地资源的选项。 我可以从本地笔记本电脑复制并粘贴到我的远程桌面,但无法从远程复制并粘贴到本
我马上就承认,至少可以说,我缺乏 Pascal 经验。因此,我能得到的任何帮助将不胜感激。 :) 作为较大程序的一部分,我需要将字符串变量写入剪贴板。我在 Lazarus(版本 1.0.12)中创建了
使用Windows的Linux子系统(LSW),可以使用clip.exe将数据复制到Windows剪贴板: $ clip.exe /? CLIP Description: Redirects
当用户单击 elm 0.18 中的按钮时,有没有办法将文本从 div 复制到剪贴板? 我看过Clipboard.elm但我不能让它在 elm 0.18 中编译和工作。那么在 elm 0.18 中是否有
有没有办法通过剪贴板将透明图像粘贴到 photoshop? 我尝试使用已注册的“PNG”格式,但似乎 photoshop 不支持它(与 MSOffice 2007 和 GIMP 相反)。使用 CF_D
我从 Vim 外部复制文本。 ⌘V 在其他应用程序中粘贴文本没有问题。在 MacVim 中,它不起作用。 在插入模式下,什么都不显示。在普通模式下,我得到 E353: Nothing in regis
我使用的是 Visio Professional 2003。它运行良好。但是现在当我复制和粘贴任何形状时,它会显示错误“打开剪贴板失败”。之后,我无法更改任何属性或名称。 当我尝试关闭窗口时,它显示警
我正在建立一个UWP定位: 最低版本:14393 目标版本:18362 我的Windows版本是:10.0.19041内部版本19041 我有下面的代码: using Windows.Applicat
我正在用 C# 制作图像查看器。该功能是在 C# 上使用 Clipboard 类的复制和粘贴功能。 并且我成功获取了 BitmapSource 的图像。但它无法检查图像格式(jpeg、png、bmp)
我想在双击标签时复制 Label: self.text 的内容,但以下内容不起作用: 主文件 #!/usr/bin/kivy # -*- coding: utf-8 -*- from kivy.app
我正在使用 CLPB_IMPORT 功能模块将剪贴板获取到内部表。没关系。我正在复制两列 Excel 数据。所以它用分隔符'#'填充表格,比如; 4448#3000 4449#4000 4441#50
我无法复制到 +或 *登记。 :echo has('clipboard')从 Vim 内部返回 0这意味着我没有那个功能标志,我不想重新编译。 我正在运行 Wayland 所以我不能使用 X11 ba
示例:%y+拖到外部+剪贴板。现在,我希望将诸如^\S\+之类的正则表达式的结果发送到外部+ clipboard。如何? 试用1. [失败] :g@^\S\+@y+ 试用2。[失败] :^\S\+y+
我是一名优秀的程序员,十分优秀!