Javascript 通过单击父元素将文本复制到剪贴板
我想通过单击其父元素将内部跨距文本复制到剪贴板,我的Html代码如下: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复制文本的一些信
<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)[已过时,应改用。