原文地址:https://www.i847.cn/article/4846.html
效果如下:
源碼如下,僅供參考,謝謝:
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/clipboard.js/2.0.6/clipboard.min.js"></script>
<script>
$("pre").mouseover(function (e) {
var _that = $(this);
_that.css("position", "relative");
_that.addClass("activePre");
var copyBtn = _that.find('.copyBtn');
if (!copyBtn || copyBtn.length <= 0) {
var copyBtn = '<span class="copyBtn" style="position:absolute;top:2px;right:2px;z-index:999;padding:2px;font-size:13px;background-color: white;cursor: pointer;" >複製</span>';
_that.append(copyBtn);
}
}).mouseout(function (e) {
var _that = $(this);
var copyBtn = _that.find('.copyBtn');
var copyBtnHover = _that.find('.copyBtn:hover');
if (copyBtnHover.length == 0) {
copyBtn.remove();
_that.removeClass("activePre");
}
});
function copyCode() {
var activePre = $(".activePre");
if (!activePre || activePre.length <= 0) {
return;
}
activePre = activePre[0];
var clone = $(activePre).clone();
clone.find('.copyBtn').remove();
var clipboard = new ClipboardJS('.copyBtn', {
text: function () {
return clone.text();
}
});
clipboard.on("success", function (e) {
$(".copyBtn").html("複製成功");
clipboard.destroy();
clone.remove();
});
clipboard.on("error", function (e) {
clipboard.destroy();
clone.remove();
});
}
</script>