1

JavaScript を使用して、ユーザーが Web ページからテキストをコピーしていることを検出し、コピーしたテキストを配列に保存することはできますか (CTRL+V キーの組み合わせをオーバーライドせず、テキストのコピーを防止することもありません)?

言い換えれば、そのキーの組み合わせのデフォルトの動作をオーバーライドせずにキーの組み合わせを検出することは可能ですか?

4

3 に答える 3

3

keyupjQuery でリスナーを使用し、イベント パラメータctrlKeykeyCodeを取得してから、選択したテキストを から取得しますwindow.getSelection()

$(window).keyup(function (e) {
    if (e.ctrlKey && e.keyCode === 67) {
        alert("Text copied was: " + window.getSelection());
    }
});

http://jsfiddle.net/G5kAG/1/


キーストロークのデフォルトの動作はreturn false、リスニング関数 (または、e.preventDefault()実質的に (およびコード内で) と同じことを行うjQuery で) を使用しない限り、干渉されませんreturn false

于 2013-05-16T18:02:03.043 に答える
1

コピー&ペーストのキーストロークを簡単につかむことができ、それらをどうするかはあなた次第です。

document.addEventListener("keyup", function(e) {
  if (e.ctrlKey && e.keyCode == 67) {
    console.log("CTRL + C");
  }

  if (e.ctrlKey && e.keyCode == 86) {
    console.log("CTRL + V");
  }
});
于 2013-05-16T18:00:21.870 に答える