Выделение содержимого div по клику на него + копирование на jQuery

Начну сразу с того, где это может вам пригодиться. Например, на своем сайте вы выкладываете статьи, где частью из них является материал, который пользователь может скачать для себя. Пример – мой сайт. Ниже я представляю код, который вы можете использовать в своих целях.
С помощью следующего скрипта вы сможете реализовать у себя данный функционал.
Непосредственно сам скрипт:

<script>

    function selectText(elementId) {
    
        var doc = document,
        text = doc.getElementById(elementId), range, selection;
        
        if(doc.body.createTextRange) {
        
            range = document.body.createTextRange();
            range.moveToElementText(text);
            range.select();
            
        } else if (window.getSelection) {
            
            selection = window.getSelection();
            range = document.createRange();
            range.selectNodeContents(text);
            selection.removeAllRanges();
            selection.addRange(range);

        }
        
    }
    
    $("#content").click(function() {
        
        selectText(this.id);
        document.execCommand("copy");

    });
    
</script>
Код вставляйте перед закрывающим тегом </body>.
Ваш контент, которому необходимо подключить данный функционал, оберните в:

<div id="content">Ваш текст</div>


Данный скрипт включает в себя автовыделение содержания всего блока + его копирование. Если вы не хотите, чтобы было автоматическое копирование, а только его выделение – удалите из скрипта эту строку:

document.execCommand("copy");


Удачных вам разработок!

скачать dle 11.3
Добавить комментарий

Оставить комментарий