浮层 poshytip.js样例 和 jquery复制span的内容到剪切板

1. 引入js和样式

<link rel="stylesheet" type="text/css" href="css/demo/overview.css">
  <script type="text/javascript" src="js/libs/poshytip.js"></script>

2.js代码

floatDiv=function(){
        $('.trigger').poshytip({
            followCursor: true,
            alignX: 'center',
            alignY: 'top',
            showTimeout: 200,
            className: 'float-tips',
            showOn: 'hover',
            alignTo: 'target',
            content: function() {

                let name = $(this).data('name');
                let number = $(this).data('number');
                return '<div class="float-tips__cont">\n' +
                    '                        <div class="float-tips__cont-info">\n' +
                    '                            <p>名称:<span class="float-tips__data" id="copydata1">'+name+'</span></p>\n' +
                    '                            <p>编号:<span class="float-tips__data" id="copydata2">'+number+'</span></p>\n' +
                    '                        </div>\n' +
                    '                        <div class="float-tips__cont-op">\n' +
                    '                            <a class="float-tips__copy icon icon-copy" id="copytip1" title="复制" οnclick="copy(1);"  data-clipboard-text="'+name+'" href="javascript:;"></a>\n' +
                    '                            <a class="float-tips__copy icon icon-copy" id="copytip2" title="复制" οnclick="copy(2);" data-clipboard-text="'+number+'" href="javascript:;"></a>\n' +
                    '                        </div>\n' +
                    '                    </div>';
            },
            offsetY: 5
        });
    }

copy=function (copydata) {
        if(copydata==1){
            var cont = $("#copydata1").text();
        }else{
            var cont = $("#copydata2").text();
        }
        var flag = copyText(cont);
        alert(flag ? "复制成功!" : "复制失败!");
    };

    //赋值到剪切板
    copyText = function (cont)  {
        var textarea = document.createElement("input");//创建input对象
        var currentFocus = document.activeElement;//当前获得焦点的元素
        document.body.appendChild(textarea);//添加元素
        textarea.value = cont;
        textarea.focus();
        if(textarea.setSelectionRange)
            textarea.setSelectionRange(0, textarea.value.length);//获取光标起始位置到结束位置
        else
            textarea.select();
        try {
            var flag = document.execCommand("copy");//执行复制
        } catch(eo) {
            var flag = false;
        }
        document.body.removeChild(textarea);//删除元素
        currentFocus.focus();
        return flag;
    }

3.html 代码

鼠标焦点移到span上显示浮层

<span class="trigger" data-name="张三" data-number="001">张三(001</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值