Как запретить выделение выделенного текста пользователем, но не только для сценария? - PullRequest
0 голосов
/ 13 февраля 2020

У меня есть сценарий, который может заставить что-то вступать в конфликт друг с другом и заставлять меня также путать его. Просто до точки, см. Мой сценарий ниже:

============================= ======== CSS ==================================

-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
outline-style: none;
user-select: none;


И значение в строках выше для того, чтобы пользователь запретил выбирать текст. А функция javascript помогает процессу функции CopyText продолжать выполнять выделение текста, который затем копирует его в буфер обмена только для сценария этой функции, позволяя выделение текста См. Javascript ниже:

=============================== ======= JS ===================================

function toClipboard(e) {
  var cell = e.parentNode,
        copyText = cell.getElementsByTagName('span'),
        selection = window.getSelection(),
        range = document.createRange();
    range.selectNodeContents(copyText[0]);
    selection.removeAllRanges();
    selection.addRange(range);
    document.execCommand('copy');
    event.stopPropagation();
}


Затем HTML для запуска всех вышеописанных сценариев, применимых в табличной сцене. См. Ниже:

=================================== === HTML =======================================

...
<tr OnClick=highlight(this)>
    <td>test to copy this text <button onclick=toClipboard(this)><small>Copy</small></button></td>
...


Примечание: Теперь проблема заключается в том, что toClipboard не хотят работать. Что я должен сделать для этого? И извините за мой engli sh и заранее спасибо, что нашли время прочитать эту ветку!

...