具体来说,我有安装代码块,我希望用户能够快速复制并粘贴到终端.我想要一个代码块'复制到剪贴板'的按钮.由于git克隆网址有一个"复制到剪贴板"按钮,我想知道我是否可以放弃它,或者不管是否有一些相对简单的我可以添加到MD来实现这一点.或者,MD文本经过的处理和"安全"是不可能的?
复制按钮现已成为现实(2021 年 5 月),正如Nat Friedman所发推文
我们刚刚为 GitHub 上的所有代码块添加了一个“复制”按钮。
我认为这不是您想要的,但如果您想复制,可以通过运行书签并添加复制按钮来完成。
var copy = function(target) {
var textArea = document.createElement('textarea')
textArea.setAttribute('style','width:1px;border:0;opacity:0;')
document.body.appendChild(textArea)
textArea.value = target.innerHTML
textArea.select()
document.execCommand('copy')
document.body.removeChild(textArea)
}
var pres = document.querySelectorAll(".comment-body > pre")
pres.forEach(function(pre){
var button = document.createElement("button")
button.className = "btn btn-sm"
button.innerHTML = "copy"
pre.parentNode.insertBefore(button, pre)
button.addEventListener('click', function(e){
e.preventDefault()
copy(pre.childNodes[0])
})
})
Run Code Online (Sandbox Code Playgroud)