반응형
    
    
    
  Clipboard를 통한 공격이 가능함이 알려진 뒤 소위 Modern Browser에서는
Clipboard에 대한 Sandbox 정책을 적용한 것으로 알고 있다.
이를 우회하기 위해 아래 방법을 활용할 수 있다.
function copy2clipboard(text) {
	// 최신 브라우저에서도 복사되도록 함
	var textArea = document.createElement("textarea");
	// 임시로 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 = text;
	document.body.appendChild(textArea);
	// text를 넣은 후 선택
	textArea.select();
	// 복사 시도
	try {
		var successful = document.execCommand('copy');
		if(successful) alert("주소가 복사되었습니다.");
	} catch (err) {
		console.log('Unable to copy');
	}
	// textarea 삭제
	document.body.removeChild(textArea);
}복사할 문자열을 매개변수로 받아서, 임시로 textarea를 생성한 뒤
복사 후, 다시 textarea를 삭제하는 방식이다.
일종의 우회 방식이기 때문에, 일부 환경에서나 추후 제대로 작동하지 않을 수 있다.
반응형