复制到剪贴板 - 复制代码

时间:2017-07-27 16:01:12

标签: clipboard

我正在使用复制到剪贴板,它与常规文本完美配合,但与复制代码无关。我试图复制的代码是一个字体很棒的代码,您将在下面的文本中看到。它复制一个正方形而不是我输入的代码进行复制。

我还需要使用样式标记属性

复制到剪贴板

/*
 * Copyright (c) 2016 Milan Kyncl
 * Licensed under the MIT license.
 *
 * jquery.copy-to-clipboard plugin
 * https://github.com/mmkyncl/jquery-copy-to-clipboard
 *
 */

$.fn.CopyToClipboard = function() {
    var textToCopy = false;
    if(this.is('select') || this.is('textarea') || this.is('input')){
        textToCopy = this.val();
    }else {
        textToCopy = this.text();
    }
    CopyToClipboard(textToCopy);
};

function CopyToClipboard( val ){
    var hiddenClipboard = $('#_hiddenClipboard_');
    if(!hiddenClipboard.length){
        $('body').append('<textarea style="position:absolute;top: -9999px;" id="_hiddenClipboard_"></textarea>');
        hiddenClipboard = $('#_hiddenClipboard_');
    }
    hiddenClipboard.html(val);
    hiddenClipboard.select();
    document.execCommand('copy');
    document.getSelection().removeAllRanges();
}

$(function(){
    $('[data-clipboard-target]').each(function(){
        $(this).click(function() {
            $($(this).data('clipboard-target')).CopyToClipboard();
        });
    });
    $('[data-clipboard-text]').each(function(){
        $(this).click(function(){
            CopyToClipboard($(this).data('clipboard-text'));
        });
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn btn-primary" data-clipboard-text="&#xf067;">Copy</button>

1 个答案:

答案 0 :(得分:0)

某些字符在HTML中保留。 如果您在文本中使用小于(&lt;)或大于(&gt;)的符号,则浏览器可能会将其与标记混合使用。 字符实体用于在HTML中显示保留字符。 字符实体如下所示:

  

&安培; ENTITY_NAME; OR&amp; #entity_number;

要显示小于号(&lt;),我们必须写:&lt;&#60;

所以如果你想在html中添加你的字体真棒代码应该将它转换为HTML实体 示例:如果您希望在html中插入代码,则上面的代码为&#xf067;,然后将其作为代码复制为&amp;#xf067;

 &#xf067; = &amp;#xf067;

这是一些HTML实体的图片可能对您有所帮助 https://gulfupload.com/i/00025/bvlhjmdnfd6x.png  我希望它可以帮助你