복사된 html 텍스트 문자를 마스킹처리하여 paste 하는 방법

복사된 html 텍스트 문자를 마스킹처리하여 paste 하는 방법

QA

복사된 html 텍스트 문자를 마스킹처리하여 paste 하는 방법

답변 3

본문

복사된 html 텍스트 문자를 마스킹처리하여 paste 하는 방법이 있을까요?

 

예를들면 웹 페이지에 아래와 같은 문구가 있고 해당 문구를 드래그 등을 하여 ctrl+c 또는 복사를 하여 클립보드에 복사되고 다른 곳(메모장 등)에 붙여넣기 할때 *****~**** ***** 등과 같이 마스킹 또는 다른 랜덤 문자로 변환되는 방법을 구현하고 싶습니다.

 

[안녕하세요~ 저는 그누보드5 입니다.] => [@@~@#!#!~@!# ] 마스킹처리 같은...

 

감사합니다!

이 질문에 댓글 쓰기 :

답변 3

window.clipboardData.getData('Text'); // 클립보드 내용 가져오기

불러온 클립보드 내용을 변환해서 다시 클립보드로 보내주면 될듯합니다.

window.clipboardData.setData('Text', txt); // 클립보드 내용 수정하기

 

--------------------------------------------------------------------------------------------------------------------

 

더 자세한 내용이 궁금하시면 여기 방문하세요

같이 얘기나누며 문제해결에 도움이 되도록 하세요

 

https://open.kakao.com/o/gzNuQjhe

답변 감사합니다!!ㅎㅎ
추가적으로 혹시 전체를 복사하되, 원하는 부분의 dom만 데이터를 변경할 수 있나요??

예 ) 전체 복사 후 붙여넣기 할때, id : div_02 의 div만 값을 변경

<div id="div_01">안녕하세요~</div>
<div id="div_02">반가워요~</div>

    -->

안녕하세요~ xxx@@~~ 등..

네 가능하십니다.

javascript queryselector 로 객체 접근하고 수정하시면 됩니다.

 


let clipboardData = window.clipboardData.getData('Text');
let div_02 = document.queryselector('#div_02');
div_02.innerText = "변경값";

크롬계열에 브라우져는 이런식으로 해야한다네요.

 

<script>
window.addEventListener('copy', function (e){
     document.execCommand('copy');
     var retUrl = document.URL;
     e.preventDefault();
     e.clipboardData.setData('text/plain', document.getSelection() + 
                             "\n\n[출처]"+retUrl+"  [gunbin91 Blog]");
}, false)
</script>

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 52
© SIRSOFT
현재 페이지 제일 처음으로