我有一个带有'p'元素的HTML文档,当单击整个元素时,我希望将其复制到剪贴板中。
<p class="pageID"><strong>Page ID: </strong>#A16</p>
哪个返回: PageID:#A16
我想拥有它,因此当我单击此行上的任意位置时,页面ID(#A16)将复制到剪贴板,但没有其他内容。我在这里看到了类似的问题,并尝试了许多不同的JavaScript解决方案,但没有任何效果。
有什么想法吗?
谢谢!
答案 0 :(得分:2)
您可以尝试这样的事情:
<p class="pageID"><strong>Page ID: </strong><span id="toCopy">#A16</span></p>
<script>
document.querySelector(".pageID").addEventListener('click', function() {
var temp_input = document.createElement("INPUT");
temp_input.value = document.querySelector('#toCopy').innerHTML;
temp_input.select();
document.execCommand("copy");
});
</script>
不需要jQuery!
答案 1 :(得分:1)
从头顶上方,我将要复制的内容包装到其自己的元素中,然后复制该元素的文本。
例如:<p class="pageID"><strong>Page ID: </strong><span class="your-class-name">#A16</span></p>
答案 2 :(得分:1)
您应该将该文本包装在具有一些id的元素中,然后专注于它并像这样复制
var el = document.getElementById("myText");
el.select();
document.execCommand("copy");
答案 3 :(得分:1)
您可以执行以下操作:
<div id="myId"><p class="pageID" id="myElement"><strong>Page ID: </strong>#A16</p></div>
<script>
$('#myId').onClick(function() {
var copyText = document.getElementById("myElement");
copyText.select();
document.execCommand("copy");
alert("Copied the text: " + copyText.value); // do whatever you want with this text.
});
</script>