在一些博客系统,如掘金的博客中,可以复制代码,它是如何实现的
Issuse 链接,欢迎交流: 【Q019】如何实现选中复制的功能
它一般可以使用第三方库 clipboard.js 来实现,源码很简单,可以读一读
主要有两个要点
- 选中
- 复制
选中
选中主要利用了 Selection API
选中的代码如下
const selection = window.getSelection();
const range = document.createRange();
range.selectNodeContents(element);
selection.removeAllRanges();
selection.addRange(range);
selectedText = selection.toString();
取消选中的代码如下
window.getSelection().removeAllRanges();
它有现成的第三方库可以使用: select.js
复制
复制就比较简单了,execCommand
document.exec('copy')
勤学如春起之苗,不见其增,日有所长。 因此我在 github 上新建了一个仓库 日问,每天至少一个问题。有关全栈,graphql,devops,微服务以及软技能,促进职业成长,欢迎交流。