2013-08-15 3 views
0

다음 코드를 사용하여 내 웹 사이트에서 텍스트를 선택할 때 저작권을 추가합니다. 사용자가 링크가있는 영역을 선택하면 getSelection() 메서드가 링크를 반환하지 않는다는 점을 제외하고는 모두 잘 작동합니다. 그냥 일반 텍스트를 반환합니다. 사용자가 스타일과 콘텐츠를 방해하지 않고 평상시처럼 내 웹 사이트 콘텐츠를 복사 할 수있게하고 싶습니다. 나는 선택의 끝 부분에 저작권을 추가하는 방법을 찾고 있습니다. 어쨌든?getSelection은 선택 항목에서 링크를 제거합니까?

안부

<script type="text/javascript"> 
function addLink() { 
    var body_element = document.getElementsByTagName('body')[0]; 
    var selection; 
    selection = window.getSelection(); 
    var pagelink = "<br /><br /> Read more at: <a href='"+document.location.href+"'>"+document.location.href+"</a><br />Copyright &copy; c.bavota"; // change this if you want 
    var copytext = selection + pagelink; 
    var newdiv = document.createElement('div'); 
    newdiv.style.position='absolute'; 
    newdiv.style.left='-99999px'; 
    body_element.appendChild(newdiv); 
    newdiv.innerHTML = copytext; 
    selection.selectAllChildren(newdiv); 
    window.setTimeout(function() { 
     body_element.removeChild(newdiv); 
    },0); 
} 
document.oncopy = addLink; 
</script> 

답변

0

그런 다음 귀하의 링크를 추가 할 수 있습니다, 대신에 텍스트, 선택의 HTML을 얻을 필요가있다.

this question을 살펴보십시오.

관련 문제