Мне нужна помощь в копировании богатого текста в буфер обмена с использованием JavaScript. я искал вокруг и не нашел ничего в соответствии с моей конкретной потребностью.
Мой JS
function ctrlA1(corp) {
with(corp) {
}
if (document.all) {
txt = corp.createTextRange()
txt.execCommand("Copy")
} else
setTimeout("window.status=''", 5000)
}
HTML
<div id="sc1">hello <br> <b> world </b> </div>
<button onclick="ctrlA1(document.getElementById('sc1') )"></button>
Вышеприведенный код не работает и получает ожидаемую ошибку объекта. любая помощь приветствуется.
Я видел там библиотеку под названием zeroclipboard
, но предпочел бы написать свою собственную функцию.
ИЗМЕНИТЬ Теперь у меня есть эта функция, чтобы выбрать текст на странице. можно ли написать формулу для копирования выбранного диапазона как?
function containerSelect(id) {
containerUnselect();
if(document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(id);
range.select();
}
else if(window.getSelection) {
var range = document.createRange();
range.selectNode(id);
window.getSelection().addRange(range);
}
}
<label onclick="containerSelect(this); select_all()">
<p>hello world</p>
<img src="imagepath.png">
</label>