Javascript 对于具有相同类的无限元素,如何将无限多个副本复制到剪贴板?
我的HTML:Javascript 对于具有相同类的无限元素,如何将无限多个副本复制到剪贴板?,javascript,html,jquery,copy,clipboard,Javascript,Html,Jquery,Copy,Clipboard,我的HTML: <Div Class='POSTS'> <Div Class='POST'> <Div Class='CONTENT'>Text1</Div> </Div> <Div Class='POST'> <Div Class='CONTENT'>Text2</Div> </Div> <Div Cla
<Div Class='POSTS'>
<Div Class='POST'>
<Div Class='CONTENT'>Text1</Div>
</Div>
<Div Class='POST'>
<Div Class='CONTENT'>Text2</Div>
</Div>
<Div Class='POST'>
<Div Class='CONTENT'>Text3</Div>
</Div>
<Div Class='POST'>
<Div Class='CONTENT'>Text4</Div>
</Div>
<Div Class='POST'>
<Div Class='CONTENT'>Text5</Div>
</Div>
<Div Class='POST'>
<Div Class='CONTENT'>Text6</Div>
</Div>
</Div>
文本1
文本2
文本3
文本4
文本5
文本6
它无限制地继续着…(永无止境)
每个元素中包含不同的文本,并具有“内容”类
我搜索了这个网站,发现了:
Https://Stackoverflow.Com/Questions/400212/How-Do-I-Copy-To-The-Clipboard-In-Javascript
但在我正在工作的项目中,我不能在每个元素上指定Id,因为您知道这些元素的数量是无限的:
<Div Class='POST'>
<Div Class='CONTENT'>some text</Div>
</Div>
一些文本
所以它需要自动添加
我想:
当用户用“内容”类单击元素内部的文本时(不管文本有多长,它有什么),整个文本和标签以及。。。被复制到剪贴簿上
我不想设置按钮!
我想把一切都做好
标记、文本和。。。。
每一个都可以复制,没有任何限制!
通过点击它自己的文本(假设这是一个文本区域,用户点击其中的文本,js复制所有文本,但这是一个div,其中包含文本)
如果你认为我错过了什么,而且还不够清楚,请告诉我
提前谢谢 这应该能解决你的问题。 首先选择整个对象,然后获取单击的元素。复制内容
var posts = document.querySelector(".POSTS");
posts
.addEventListener("click", function (e) {
console.log("index", e.target);
navigator.clipboard.writeText(e.target.innerText).then(
function () {
console.log("Async: Copying to clipboard was successful!");
},
function (err) {
console.error("Async: Could not copy text: ", err);
}
);
});
没错:)谢谢你,伙计!这在所有平台上都有效吗?您可以在执行之前检查navigator.clipboard对象。否则你将不得不写一个后备方案。