최근 다른 웹 사이트에서이 사실을 확인하고 작동 방식을 blog post으로 기록했습니다. jQuery 예제는 사용자가 복사 및 붙여 넣기를 실제로 수정하지 않는 것처럼 새로운 컨텍스트 메뉴를 추가하기 만합니다. 한마디로
: 마지막 부분을 즉시 실행하면 작동하지 않는 말
var content = document.getElementById("content");
content.addEventListener("copy", oncopy);
function oncopy() {
var newEl = document.createElement("p");
document.body.appendChild(newEl);
newEl.innerHTML = "In your copy, messing with your text!";
var selection = document.getSelection();
var range = selection.getRangeAt(0);
selection.selectAllChildren(newEl);
setTimeout(function() {
newEl.parentNode.removeChild(newEl);
selection.removeAllRanges();
selection.addRange(range);
}, 0)
}
setTimeout
이 중요하다.
이 예제 은 마지막으로 선택한 텍스트를의 선택한 텍스트로 바꿉니다. 기존 선택을 잡고 원하는대로 추가 할 수도 있습니다.
지금이 점에 대해 흥미로운 점이 있습니다.Slashdot이 방금 Tynt의 "서비스"에 관한 이야기를 올렸습니다. http://yro.slashdot.org/story/10/01/14/1818222/Tynt-Insight-Is-Watching-You-Cut-and-Paste – JasCav