有点小九九
简单的事情认真做

实现复制,剪切文字内容

  先引入js插件:

1 <script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script>

 

  第二步新建对象:

 1 <script type="text/javascript">
 2         // 复制下一个标签的内容
 3         //         new ClipboardJS('.btn', {
 4         //             target: function(trigger) {
 5         //                 return trigger.nextElementSibling;
 6         //             }
 7         //         });
 8         // 复制本身 aria-label 的值
 9         //         new ClipboardJS('.btn', {
10         //             text: function(trigger) {
11         //                 return trigger.getAttribute('aria-label');
12         //             }
13         //         });
14 
15         //         new ClipboardJS('.btn', {
16         //             container: document.getElementById('modal')
17         //         });
18 
19         var clipboard = new ClipboardJS('.btn');
20 
21         clipboard.on('success', function(e) {
22             // 获取文本方式:复制(copy)/剪切(cut)
23             //             console.info('Action:', e.action);
24             // 获取的文本内容
25             //             console.info('Text:', e.text);
26             // 获取文本的目标
27             //             console.info('Trigger:', e.trigger);
28             // 
29             e.clearSelection();
30         });
31         
32         // 貌似是禁止复制(用完关掉才是王道)
33         // clipboard.destroy()
34         
35         //         clipboard.on('error', function(e) {
36         //             console.error('Action:', e.action);
37         //             console.error('Trigger:', e.trigger);
38         //         });
39     </script>

 

  第三步创建元素确认要复制内容与方式:

  

 1      <div id="fn" value="复制的文本在这里" aria-label="测试文本">
 2             value貌似是input标签才能用的,在其他的标签中value内容不会被操作,而是直接操作元素内容
 3         </div>
 4         
 5         <!-- 当使用input标签时,操作内容则是value内部内容 -->
 6         <input type="" name="" id="fn1" value="这是input内的文本" />
 7         
 8         <text id="modal">这是text文本</text>
 9         
10         <!-- 下列按钮为操作按钮 其中data-clipboard-target用来确定复制的目标 -->
11         <button type="button" class="btn" data-clipboard-target="#fn">复制啊</button>
12         <!-- data-clipboard-action 用来确定复制的方式(剪切与拷贝),默认为拷贝 -->
13         <button type="button" class="btn" data-clipboard-target="#fn1" data-clipboard-action="cut">剪切啊</button>
14         <!-- data-clipboard-text 则是要复制的内容 -->
15         <button type="button" class="btn" data-clipboard-text="#modal" aria-label="我复制">复制自己啊</button>

 

                                                            字太难看,不想动笔,此章为印,加深记忆,往后若遇,来此考古。

posted on 2020-03-20 09:27  有点小九九  阅读(320)  评论(0)    收藏  举报