复制特定文本以在javascript中复制另一个文本

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

标签: javascript

我想让它像我复制的东西一样,我会在剪贴板上找到其他东西。

document.addEventListener('copy', function(e){
  if(e.clipboardData.getData('Text').toString()==="@Trolluminati") 
  e.clipboardData.setData ("Text", "<@325608201175433216>");
  e.preventDefault();
});

Idk,如何制作,以便将此特定文字的最后一个副本更改为另一个。

现在它只保留相同的复制文本而不会更改它。

4 个答案:

答案 0 :(得分:1)

 document.addEventListener('copy', function(e){
console.log(0);
if( window.getSelection().toString().trim()==="@Trolluminati") 
  e.clipboardData.setData ("Text", "<@325608201175433216>");
else
  e.clipboardData.setData ("Text", window.getSelection().toString().trim());
e.preventDefault();
});

试试这个

 document.addEventListener('copy', function(e){
console.log(0);
if( window.getSelection().toString().trim()==="@Trolluminati") 
  e.clipboardData.setData ("Text", "<@325608201175433216>");
else
  e.clipboardData.setData ("Text", window.getSelection().toString().trim());
e.preventDefault();
});

答案 1 :(得分:1)

document.addEventListener('copy', function(e){
  var selectedText  = window.getSelection().toString();
  if (selectedText == '@Trolluminati') {
      e.preventDefault();
      clipboardData = e.clipboardData || window.clipboardData || e.originalEvent.clipboardData;
      clipboardData.setData('text', '<@325608201175433216>');
  }

});

答案 2 :(得分:0)

这里有一些可能有用的代码

if (document.queryCommandSupported('copy')) {
      var textArea = document.createElement("textarea");
      textArea.style.position = 'fixed';
      textArea.style.top = '0';
      textArea.style.left = '0';
      textArea.style.width = '2em';
      textArea.style.height = '2em';
      textArea.style.padding = '0';
      textArea.style.border = 'none';
      textArea.style.outline = 'none';
      textArea.style.boxShadow = 'none';
      textArea.style.background = 'transparent';
      textArea.value = INSERT WHATEVER YOU WANT TO COPY HERE
      document.body.appendChild(textArea);
      textArea.select();
      try {
        var successful = document.execCommand('copy');
        var msg = successful ? 'successful' : 'unsuccessful';
        console.log('Copying text command was ' + msg);
      } catch (err) {
        console.log('Oops, unable to copy');
      }
      document.body.removeChild(textArea);
    }

答案 3 :(得分:0)

我创建了下一个代码。它适用于Chrome。

document.addEventListener('copy', function (event) {
  event.preventDefault();

  var copytext = window.getSelection() + '<@325608201175433216>';

  if (event.clipboardData) {
    event.clipboardData.setData('Text', copytext);
  }
});

jsfiddle