Я пытаюсь выбрать / выделить все tds в таблице (для копирования), используя следующий код, но я получаю эту ошибку
Failed to execute 'selectNode' on 'Range': parameter 1 is not of type 'Node'.
Не могли бы вы сообщить мне, что я делаю здесь неправильно?
function selectElementContents(el) {
var body = document.body, range, sel;
if (document.createRange && window.getSelection) {
range = document.createRange();
sel = window.getSelection();
sel.removeAllRanges();
try {
range.selectNodeContents(el);
sel.addRange(range);
} catch (e) {
range.selectNode(el);
sel.addRange(range);
}
} else if (body.createTextRange) {
range = body.createTextRange();
range.moveToElementText(el);
range.select();
}
}
$("#select").on("click", function(){
selectElementContents($("#table"));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table id="table" border=1>
<thead>
<tr><th>Heading</th><th>Heading</th></tr>
</thead>
<tbody>
<tr><td>cell</td><td>cell</td></tr>
</tbody>
</table>
<input type="button" value="select table" id="select" />