clipboard.js 添加已复制提示效果

修改一主题遇到的问题,需要为文章代码添加复制功能。点击复制有 clipboard.js 这个插件可用,但它不支持复制结果提示,使用体验不太好。看到 Bootstrap 文档里的效果不错,于是提取出来给大家参考。

复制提示用到 Bootstrap Tooltip 组件,除了引入 jQuery 和 Bootstrap 外,还需要 Popper.js (UMD 版本)。如果你用的 Bootstrap 3,则不依赖 Popper.js。但需要将 JavaScript 代码里的 _fixTitle 改为 fixTitle

引入资源




HTML

超链接

JavaScript

$("figure.demo, div.demo").each(function() {
	$(this).before('复制'),
	$(".btn-clipboard").tooltip().on("mouseleave", function() {
		$(this).tooltip("hide")
	})
});
var clipboard = new ClipboardJS(".btn-clipboard", {
	target: function(e) {
		return e.parentNode.nextElementSibling
	}
});
clipboard.on("success", function(e) {
	$(e.trigger).attr("title", "已复制").tooltip("_fixTitle").tooltip("show").attr("title", "复制到剪贴板").tooltip("_fixTitle"),
	e.clearSelection()
}),
clipboard.on("error", function(e) {
	$(e.trigger).attr("title", "未复制").tooltip("_fixTitle").tooltip("show").attr("title", "复制到剪贴板").tooltip("_fixTitle")
})

代码修改来源 https://getbootstrap.com/docs/4.4/assets/js/docs.min.js

推荐站内搜索:域名服务器是什么、免费个人网站服务器、站长ip、海外域名、便宜域名注册、主机租用、广东主机托管、国外服务器租用哪家好、香港最好虚拟主机、已备案未注册域名、