如果我手动复制html表格,我可以将其粘贴到Google文档中并保留格式(看起来像一张表格)。
如何使用按钮以编程方式复制内容,并粘贴为html表?像下面这样......
evar copydeck = $("<div>").html(htmlToInsert);
$('body').append(copydeck);
copydeck.select();
document.execCommand('copy');
copydeck.remove();
以上代码不起作用......但这样做:
copydeck = $("<textarea>").val(this.list.join("\r\n"));
$('body').append(copydeck);
copydeck.select();
document.execCommand('copy');
copydeck.remove();
我想这是因为元素必须是可选择的 - 比如输入或htmlarea字段。但是它们不能保存html(或者它只是纯文本,而不是html)。
复制和粘贴HTML的方法吗?
答案 0 :(得分:6)
是!
function copy() {
var target = document.getElementById('my-div');
var range, select;
if (document.createRange) {
range = document.createRange();
range.selectNode(target)
select = window.getSelection();
select.removeAllRanges();
select.addRange(range);
document.execCommand('copy');
select.removeAllRanges();
} else {
range = document.body.createTextRange();
range.moveToElementText(target);
range.select();
document.execCommand('copy');
}
}
<div id="my-div" style="border:1px dashed #999; color:#666; background:#EEE; padding:2px 5px; margin:10px 0;">
Hello stackoverflow!))
</div>
<div>
<input onclick="copy()" type="button" value="Copy">
</div>