Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过单击父元素将文本复制到剪贴板_Javascript_Html - Fatal编程技术网

Javascript 通过单击父元素将文本复制到剪贴板

Javascript 通过单击父元素将文本复制到剪贴板,javascript,html,Javascript,Html,我想通过单击其父元素将内部跨距文本复制到剪贴板,我的Html代码如下: <div> <span> text to copy </span> </div> <div> <span> text to copy </span> </div> <div> <span> text to copy </span> </div> 以下是有关从span复制文本的一些信

我想通过单击其父元素将内部跨距文本复制到剪贴板,我的Html代码如下:

<div> <span> text to copy </span> </div>
<div> <span> text to copy </span> </div>
<div> <span> text to copy </span> </div>

以下是有关从span复制文本的一些信息。必须创建临时文本区域才能执行此操作:

以下是有关从span复制文本的一些信息。您必须创建临时文本区域才能执行此操作:

注意:如MDN文档所述是绝对的, 您可以使用实现剪贴板复制,您可以阅读有关实现的更多信息,还请注意,此实现需要用户允许浏览器访问剪贴板,此代码段在此处不起作用,因为其沙盒已存在,但将在本地工作:

constmyspan=document.queryselectoral(“span”);
mySpan.forEach((元素)=>{
var parSpan=element.parentElement;
parSpan.addEventListener(“单击”,()=>{
navigator.permissions
.查询({
名称:“剪贴板读取”,
})
。然后((许可状态)=>{
//将被“授予”、“拒绝”或“提示”:
日志(permissionStatus.state);
if(permissionStatus.state==“已授予”){
navigator.clipboard
.writeText(element.textContent.trim())
.然后(()=>{
log(“文本复制到剪贴板”);
})
.catch((错误)=>{
//如果用户拒绝剪贴板权限,则可能发生这种情况:
console.error(“无法复制文本:”,err);
});
log(“文本复制!!”);
}否则{
console.error(“无法复制文本:”,err);
抛出“无法复制,需要许可”;
}
{
{
/*cpyText()*/
}
}
});
});
});
这是父元素!!1文本复制1
这是父元素!!2文本复制2
这是父元素!!3文本到副本3
注:如MDN文档所述,是绝对的, 您可以使用实现剪贴板复制,您可以阅读有关实现的更多信息,还请注意,此实现需要用户允许浏览器访问剪贴板,此代码段在此处不起作用,因为其沙盒已存在,但将在本地工作:

constmyspan=document.queryselectoral(“span”);
mySpan.forEach((元素)=>{
var parSpan=element.parentElement;
parSpan.addEventListener(“单击”,()=>{
navigator.permissions
.查询({
名称:“剪贴板读取”,
})
。然后((许可状态)=>{
//将被“授予”、“拒绝”或“提示”:
日志(permissionStatus.state);
if(permissionStatus.state==“已授予”){
navigator.clipboard
.writeText(element.textContent.trim())
.然后(()=>{
log(“文本复制到剪贴板”);
})
.catch((错误)=>{
//如果用户拒绝剪贴板权限,则可能发生这种情况:
console.error(“无法复制文本:”,err);
});
log(“文本复制!!”);
}否则{
console.error(“无法复制文本:”,err);
抛出“无法复制,需要许可”;
}
{
{
/*cpyText()*/
}
}
});
});
});
这是父元素!!1文本复制1
这是父元素!!2文本复制2

这是父元素!!3文本复制3
为什么要
document.execCommand('copy')
elIn的内容复制到剪贴板中?
document.execCommand('copy')
如何知道复制
elIn
的内容?我不知道,怎么知道;(为什么
document.execCommand('copy')
要将
elIn的内容复制到剪贴板中?
document.execCommand('copy')
怎么知道复制
elIn的内容?)我不知道,怎么知道这一点?;(.execCommand)[已经过时,应该改用。(.execCommand)[已过时,应改用。