所以這裏是我的代碼時,這個按鈕如何從一個div的文本複製到剪貼板
<button id="button1">Click to copy</button>
此DIV要複製的文本用戶點擊。我怎樣才能做到這一點???對不起我的英文不好
<div id="div1">Text To Copy</div>
所以這裏是我的代碼時,這個按鈕如何從一個div的文本複製到剪貼板
<button id="button1">Click to copy</button>
此DIV要複製的文本用戶點擊。我怎樣才能做到這一點???對不起我的英文不好
<div id="div1">Text To Copy</div>
雙方將作品就像一個魅力:),
JAVASCRIPT:
function CopyToClipboard(containerid) {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(document.getElementById(containerid));
range.select().createTextRange();
document.execCommand("copy");
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(document.getElementById(containerid));
window.getSelection().addRange(range);
document.execCommand("copy");
alert("text copied")
}}
此外,
<button id="button1" onclick="CopyToClipboard('div1')">Click to copy</button>
<div id="div1" >Text To Copy </div>
<textarea placeholder="Press ctrl+v to Paste the copied text" rows="5" cols="20"></textarea>
我試圖上面提出的解決方案。但它不足夠跨瀏覽器。我真的需要ie11來工作。 嘗試後,我得到了:
<html>
<body>
<div id="a" onclick="copyDivToClipboard()"> Click to copy </div>
</body>
<script>
function copyDivToClipboard() {
var range = window.getSelection().getRangeAt(0);
range.selectNode(document.getElementById("a"));
window.getSelection().addRange(range);
document.execCommand("copy")
}
</script>
與Firefox 57,鉻63,歌劇49,IE11,只有邊緣測試沒有工作。
將該鏈接添加爲答案,以便在第一個答案下面更多地關注Aaron Lavers的評論。
這工作就像一個魅力 - http://clipboardjs.com。只需添加clipboard.js或min文件即可。在啓動時,使用具有要點擊的html組件的類,並將要複製的內容的組件id傳遞給click元素。
從一個DIV不textarea的 – Alex
解決方案與JS只,見http://jsfiddle.net/jdhenckel/km7prgv4/3 –
https://stackoverflow.com/a/38672314/1568658這一個行之有效 –