zoukankan      html  css  js  c++  java
  • 复制功能 in pc&mb

     在pc端我经常这样:

    // JScript 文件
    function copyToClip(type, copytext) {
        if (window.clipboardData) {
            if (window.clipboardData.setData("Text", copytext)) {
                alert("复制成功!")
                return;
            }
        }
        else if (window.netscape) {
            try {
                netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
                var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
                if (clip) {
                    var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
                    if (trans) {
                        trans.addDataFlavor('text/unicode');
                        var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
                        str.data = copytext;
                        trans.setTransferData("text/unicode", str, copytext.length * 2);
                        var clipid = Components.interfaces.nsIClipboard;
                        clip.setData(trans, null, clipid.kGlobalClipboard);
                        alert("复制成功!")
                        return;
                    }
                }
            }
            catch (e) {
            }
        }
        prompt("您使用的浏览器不允许自动复制,请按下 Ctrl+C 进行复制", copytext);
    }

    不支持的情况就弹出input[type=text],使用.select()选中value,让用户自己复制。

    移动端直接用的插件 clipboard-js ,介绍的最后边有说明兼容版本,在苹果5及以上亲测可用,华为自带uc浏览器(测试华为荣耀7,荣耀8,荣耀9)皆不可用,其他常用浏览器没问题。

    2017.12.15  今天碰见一个新的问题,列表中每一行都有一个 复制 按钮 然后我尝试获取在页面中添加onclick事件传入this,确定是哪一个需要复制,结果是第一次点击无效。。。然后翻了clipboard的github,找到解决方案:https://github.com/zenorocha/clipboard.js/blob/master/demo/constructor-nodelist.html#L18-L19

  • 相关阅读:
    HDU1251统计难题map+输入
    HDU1863畅通工程
    POJ2253 Frogger
    HDU 4725 (The Shortest Path in Nya Graph)层次网络
    hdu5521(Meeting)spfa 层次网络最短路
    Fire Net ZOJ 1002
    POJ3259(Wormholes) 判断负环
    POJ3268(Silver Cow Party)
    棋盘问题 POJ 1321
    POJ 1661 (Help Jimmy )
  • 原文地址:https://www.cnblogs.com/Merrys/p/7523022.html
Copyright © 2011-2022 走看看