zoukankan      html  css  js  c++  java
  • 使用clipboard.js复制示例

    项目地址:https://github.com/zenorocha/clipboard.js

    代码示例为其demo示例

    注:示例中的clipboard.min.js为https://github.com/zenorocha/clipboard.js/tree/master/src的clipboard.js

    1.复制节点值,下面示例事先对列表中的data-clipboard-text赋值,点击元素就会复制其属性值

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>constructor-nodelist</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <button data-clipboard-text="1">Copy</button>
        <button data-clipboard-text="2">Copy</button>
        <button data-clipboard-text="3">Copy</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard by passing a list of HTML elements -->
        <script>
        var btns = document.querySelectorAll('button');
        var clipboard = new Clipboard(btns);
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    以及这种方式:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>constructor-selector</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <button class="btn" data-clipboard-text="1">Copy</button>
        <button class="btn" data-clipboard-text="2">Copy</button>
        <button class="btn" data-clipboard-text="3">Copy</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard by passing a string selector -->
        <script>
        var clipboard = new Clipboard('.btn');
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    

    2.复制指定元素,下面事例对指定的标签元素进行复制

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>function-target</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <button class="btn">Copy</button>
        <div>hello</div>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard -->
        <script>
        var clipboard = new Clipboard('.btn', {
            target: function() {
                return document.querySelector('div');
            }
        });
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    

    以及这种方式,指定了要复制的是一个div标签的元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>target-div</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <div>hello</div>
        <button class="btn" data-clipboard-action="copy" data-clipboard-target="div">Copy</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard -->
        <script>
        var clipboard = new Clipboard('.btn');
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    



    3.动态复制值,下面示例在初始化clipboard对象时,通过text对所要复制的内容进行复制

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>function-text</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <button class="btn">Copy</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard -->
        <script>
        var clipboard = new Clipboard('.btn', {
            text: function() {
                return 'to be or not to be';
            }
        });
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    

    4.对指定输入框或文本域的内容进行复制

    输入框:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>target-input</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <input id="foo" type="text" value="hello">
        <button class="btn" data-clipboard-action="copy" data-clipboard-target="#foo">Copy</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard -->
        <script>
        var clipboard = new Clipboard('.btn');
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    
    文本域:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>target-textarea</title>
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>
        <!-- 1. Define some markup -->
        <textarea id="bar">hello</textarea>
        <button class="btn" data-clipboard-action="cut" data-clipboard-target="#bar">Cut</button>
    
        <!-- 2. Include library -->
        <script src="../dist/clipboard.min.js"></script>
    
        <!-- 3. Instantiate clipboard -->
        <script>
        var clipboard = new Clipboard('.btn');
    
        clipboard.on('success', function(e) {
            console.log(e);
        });
    
        clipboard.on('error', function(e) {
            console.log(e);
        });
        </script>
    </body>
    </html>
    


  • 相关阅读:
    从程序员到项目经理(16):原来一切问题都是可以解决的【转载】
    从程序员到项目经理(15):项目管理三大目标【转载】
    从程序员到项目经理(14):项目经理必须懂一点“章法”【转载】
    从程序员到项目经理(13):如何管理自己的时间(下)【转载】
    从程序员到项目经理(12):如何管理自己的时间(上)【转载】
    Linux的五个查找命令
    AWK 简明教程
    libstdc++.so.5: cannot open shared object file: No such file or directory
    中文分词器ICTCLAS使用方法(Java)
    Jetty实战之 安装 运行 部署
  • 原文地址:https://www.cnblogs.com/dulinan/p/12033049.html
Copyright © 2011-2022 走看看