如何使用 HTML/JS 中的按钮将来自锚点的 href link 复制到剪贴板?
How to use a button in HTML/JS to copy to the Clipboard the href link from an Anchor?
我有一个 html 文件,其中 table 在每一行中收集了几个网站 links (url),并且在同一个 table我想为每一行都有一个按钮,它将该行的 link 复制到剪贴板(在锚标记中嵌入为 'href'),给用户一个反馈弹出窗口。
我已经尝试了几种方法,但似乎大多数可用示例都显示了如何仅针对输入字段实现这一点,此外还使用不接收文本参考 ID 作为参数的硬编码函数待复制。
有什么想法吗?
-更新-
由于Maassander的建议,我解决了我的问题。
不幸的是,建议的线程对于我的问题不够具体:
How do I copy to the clipboard in JavaScript?
我猜最基本的版本看起来像这样:
var rows = document.getElementsByClassName('table-row');
for (var i = 0; i < rows.length; i++){
var button = rows[i].querySelector('button');
button.addEventListener('click', function(e){
var link = e.target.closest('tr').querySelector('a');
var tempText = document.createElement('textarea');
tempText.value = link.href;
document.body.appendChild(tempText);
tempText.select();
document.execCommand('copy');
document.body.removeChild(tempText);
});
}
<table>
<tr class="table-row">
<td><a href="https://www.google.com">Google</a></td>
<td><button type="button">Copy</button></td>
</tr>
<tr class="table-row">
<td><a href="https://whosebug.com/">Stack Overflow</a></td>
<td><button type="button">Copy</button></td>
</tr>
</table>
我有一个 html 文件,其中 table 在每一行中收集了几个网站 links (url),并且在同一个 table我想为每一行都有一个按钮,它将该行的 link 复制到剪贴板(在锚标记中嵌入为 'href'),给用户一个反馈弹出窗口。
我已经尝试了几种方法,但似乎大多数可用示例都显示了如何仅针对输入字段实现这一点,此外还使用不接收文本参考 ID 作为参数的硬编码函数待复制。
有什么想法吗?
-更新- 由于Maassander的建议,我解决了我的问题。 不幸的是,建议的线程对于我的问题不够具体: How do I copy to the clipboard in JavaScript?
我猜最基本的版本看起来像这样:
var rows = document.getElementsByClassName('table-row');
for (var i = 0; i < rows.length; i++){
var button = rows[i].querySelector('button');
button.addEventListener('click', function(e){
var link = e.target.closest('tr').querySelector('a');
var tempText = document.createElement('textarea');
tempText.value = link.href;
document.body.appendChild(tempText);
tempText.select();
document.execCommand('copy');
document.body.removeChild(tempText);
});
}
<table>
<tr class="table-row">
<td><a href="https://www.google.com">Google</a></td>
<td><button type="button">Copy</button></td>
</tr>
<tr class="table-row">
<td><a href="https://whosebug.com/">Stack Overflow</a></td>
<td><button type="button">Copy</button></td>
</tr>
</table>