我试图使用户使用我的脚本,只需点击一个ID从一个特定的网站,它将复制一个链接到他们的剪贴板上的文本,他们点击。例如,我点击http://www.myurl.com/上的文本1510970,它用ID复制一个链接http://www.myurl.com/viewReport.php?id=,所以当我粘贴复制的内容时,它应该看起来像http://www.myurl.com/viewReport.php?id=1510970。
发布于 2018-08-01 04:15:50
如果要确保与所有主要浏览器的兼容性,可以使用以下解决方法:
<textarea>元素。<textarea>元素追加到HTML中。HTMLInputElement.select()选择<textarea>元素的内容。Document.execCommand('copy')将<textarea>的内容复制到剪贴板。<textarea>元素。
const copyToClipboard = str => {
const el = document.createElement('textarea');
el.value = str;
document.body.appendChild(el);
el.select();
document.execCommand('copy');
document.body.removeChild(el);
};
const url ='http://www.myurl.com/viewReport.php?id=';
document.getElementById('myItem').addEventListener('click', function(e){
let myUrl = url + e.target.dataset.page_id;
copyToClipboard( myUrl );
alert(myUrl + ' copied to clipboard!')
});<div id="myItem" data-page_id="1510970">1510970</div>
样式:在HTML中注入
textarea可能会导致一些呈现问题。为了避免它们,使用CSS隐藏元素,给它一个绝对的位置和负的y坐标。(这些只是例子。)
发布于 2018-08-01 04:21:15
你可以的
function copyText(){
var url = "http://www.myurl.com/viewReport.php?id=";
var text = document.getElementById("myText").innerHTML;
var textCopy = document.getElementById("myText");
textCopy.value = url + text;
document.execCommand("copy");
}<div id="myText" onclick="copyText()">Text you want to copy</div>
https://stackoverflow.com/questions/51625169
复制相似问题