Dan*_*iel 3 javascript api safari clipboard ios
我有一个简短的问题。当我按下一个按钮时,我想在我的 iOS 设备上的剪贴板中添加一个文本,该按钮使用 ajax 请求将数据放入剪贴板。
使用桌面上的浏览器和我的 Android 设备,它运行良好,但使用我的 iOS 设备时出现问题。
$.ajax({
type: "GET",
url: "missing_string.php",
data: getAttributes($(this)),
success: function(data) {
if (navigator.clipboard) {
navigator.clipboard.writeText(data)
.then(() => {
alert("SUCCESS");
})
.catch(err => {
alert(err);
console.log('Something went wrong', err);
});
Run Code Online (Sandbox Code Playgroud)
所以我收到以下错误消息:
NotAllowedError:当前上下文中用户代理或平台不允许该请求,可能是因为用户拒绝了权限。
如何将我的文本放到剪贴板?我使用 iOS 13.5 和 13.4 应该支持剪贴板 API。
https://webkit.org/blog/10247/new-webkit-features-in-safari-13-1/
Async Clipboard API
WebKit brings the Async Clipboard API to this release of Safari...
you should read it
Run Code Online (Sandbox Code Playgroud)
TLDR:该实现可通过navigator.clipboard必须在用户事件中调用的API 获得
您正在尝试由于 API 调用而不是在用户交互的上下文中复制到剪贴板。这是不允许的。
| 归档时间: |
|
| 查看次数: |
2143 次 |
| 最近记录: |