选择所有文本,然后将其复制到javascript中

Select all text then copy it in javascript

本文关键字:复制 javascript 然后 文本 选择      更新时间:2023-09-26

我有一个代码,如果我选择了一些文本,然后单击复制它就可以工作。

如果我不选择任何文本并单击copy,那么我必须复制所有文本,我的问题。

我的网页:

<textarea id="txt" style="width:100%;height:100px;">To enjoy good health</textarea>
<div align="center"><button class="btn-md">copy</button></div>

我的脚本:

$(document).ready(function(){
   $('.btn-md').click(function(){
     $('#txt').focus();
     document.execCommand('copy');
   });
});

试试

$(document).ready(function(){
    $('.btn-md').click(function(){
        var selectedText = getSelectedText($('#txt')[0]);
        if(getSelectedText($('#txt')[0]) != '') {
          
            copyToClipboard(selectedText);
        } else {
            $('#txt').focus().select();
        }
        document.execCommand('copy');
    });
});
function getSelectedText(e) {
    var text   = "",
        start  = e.selectionStart,
        finish = e.selectionEnd;
    text   = e.value.substring(start, finish);
    return text;
}
function copyToClipboard(text){
    var et = $('<textarea/>',{
       css:{ opacity: '0' }
    });
    $('body').append(et);
    $(et)[0].value = text;
    $(et).focus().select();
    document.execCommand('copy');
    $(et).remove();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<textarea id="txt" style="width:100%;height:100px;">To enjoy good health</textarea>
<div align="center"><button class="btn-md">copy</button></div>