IE에 경우 window.clipboardData.getData() 함수를 이용하여 클립보드에 내용을 가져올수 있지만,
Chrome에 경우 보안상에 이유로 바로 접근이 불가능 합니다.
그래서 아래와 같이 paste 이벤트시 내용을 가져오는것으로
처리 할 수 있습니다.
:: javascript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function handlePaste (e) { var clipboardData, pastedData; // Stop data actually being pasted into div e.stopPropagation(); e.preventDefault(); // Get pasted data via clipboard API clipboardData = e.clipboardData || window.clipboardData; pastedData = clipboardData.getData('Text'); // Do whatever with pasteddata alert(pastedData); } document.getElementById('testId').addEventListener('paste', handlePaste); | cs |
:: html
1 | <input type="text" id="testId"> | cs |
위와 같이 하고 input창에서 붙여넣기를 할 경우 클립보드에 내용이 출력되는걸 확인할 수 있습니다.
ie, chrome 모두 이상없이 동작합니다.
:: jsfiddle
출처 : http://stackoverflow.com/questions/2176861/javascript-get-clipboard-data-on-paste-event-cross-browser
'Programming > Javascript' 카테고리의 다른 글
ie11 window.scrollY undefined 문제 (0) | 2019.11.27 |
---|---|
[javascript] url 정규식, pakcage name 정규식 (0) | 2019.03.06 |
[Javascript] trim, to camel case, to dashed, and to underscore (0) | 2017.03.02 |
localStorage 사용법 (0) | 2016.07.09 |
[javascript] Use strict ? (0) | 2016.04.08 |