最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

HTML页面-复制按钮使用的示例代码分享

来源:动视网 责编:小采 时间:2020-11-27 15:33:44
文档

HTML页面-复制按钮使用的示例代码分享

HTML页面-复制按钮使用的示例代码分享:margin: 0px; padding: 10px 0px 5px; font-size: 14px; color: rgb(37, 37, 37); font-family: arial, "microsoft yahei", 宋体, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);">先说一下我的整体方案:用到了clipboard插件,官方地址
推荐度:
导读HTML页面-复制按钮使用的示例代码分享:margin: 0px; padding: 10px 0px 5px; font-size: 14px; color: rgb(37, 37, 37); font-family: arial, "microsoft yahei", 宋体, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);">先说一下我的整体方案:用到了clipboard插件,官方地址


margin: 0px; padding: 10px 0px 5px; font-size: 14px; color: rgb(37, 37, 37); font-family: arial, "microsoft yahei", 宋体, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);">先说一下我的整体方案:

用到了clipboard插件,官方地址和github地址,也可以参考中文说明。

clipboard插件实测:在PC端的浏览器(试了mac上的safari,chrome,firefox)可用,iOS 10.3上的safari可用,手机上的微信QQ浏览器能用,安卓手机自带的浏览器以及UC,不可用。所以对不可用的设备,采用弹层,长按手动复制的方法。

这里需要注意一点,当需要获取的 标签 为dispaly:none 的时候data-clipboard-target的方式得不到值,可用data-clipboard-text结合下面的方法。

var getContent=document.getElementById("divContent").innerHTML;
document.getElementById("copy-button").setAttribute("data-clipboard-text", getContent);

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
 <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0,user-scalable=no">
 <title>复制</title>
 <style type="text/css">
 .show {
 display: block;
 }
 .hidden {
 display: none;
 }
 #divLayer {
 background-color: rgba(204, 204, 204, 0.7); 
 width: 100%;
 height: 100%;
 position: fixed; /* 用absolute的话,当页面过长,下面的部分不会覆盖。*/
 left: 0px;
 top: 0px;
 }
 #centerLayer {
 background-color: white;
 margin-top: 150px;
 width: 100%;
 height: 208px;
 text-align: center;
 }
 </style>
 <script type="text/javascript">
 function showLayer() {
 document.getElementById("divLayer").className="show";
 }
 function closeLayer() {
 document.getElementById("divLayer").className="hidden";
 }
 </script>
 </head>

 <body>
 <div id="divLayer">
 <div id="centerLayer">
 <div style="height: 20px; padding-top:8px; padding-bottom: 8px;">请长按选中下面虚线框中的内容进行复制:</div>
 <div id="showContent" style="border: 1px gray dashed; height: 120px; padding-top: 8px;">
 <span id="divContent">hello world!</span>
 </div>
 <button id="closeButton" onclick="closeLayer()" style="border: 1px gray solid; margin-top: 10px;">点击关闭</button>
 </div>
 </div>
 
 <button id="copy-button" data-clipboard-action="copy" data-clipboard-text="text!">复制</button>
 <script type="text/javascript" src="clipboard.min.js"></script>
 <script>

 //dispaly:none 的时候 data-clipboard-target 得不到值,所以通过下面的方法更改。
 var getContent=document.getElementById("divContent").innerHTML;
 document.getElementById("copy-button").setAttribute("data-clipboard-text", getContent);

 var clipboard = new Clipboard('#copy-button');
 clipboard.on('success', function(e) {
 console.info('Action:', e.action);
 console.info('Text:', e.text);
 console.info('Trigger:', e.trigger);
 e.clearSelection(); //清除选择
 });
 clipboard.on('error', function(e) {
 console.error('Action:', e.action);
 console.error('Trigger:', e.trigger);
 showLayer();
 });
 </script>
 </body>
</html>

文档

HTML页面-复制按钮使用的示例代码分享

HTML页面-复制按钮使用的示例代码分享:margin: 0px; padding: 10px 0px 5px; font-size: 14px; color: rgb(37, 37, 37); font-family: arial, "microsoft yahei", 宋体, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);">先说一下我的整体方案:用到了clipboard插件,官方地址
推荐度:
标签: 复制 分享 代码
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top