티스토리 뷰
# 1. 개요
- 기존에 플래시 기반의 zeroclipboard를 사용하던 부분에 대해 2020년까지 교체해야함. (크롬 정책)
zeroclipboard를 사용한 이유는 클립보드로 복사하기 위함.
zeroclipboard 대신 Async Clipboard API를 사용함. 자세한 내용은 아래 링크를 참고.
Ref. https://codepen.io/DeanMarkTaylor/pen/RMRaJX?editors=1011
#2. 예제
- 위 링크 예제로 간단한 텍스트를 클립보드에 복사하는 예제임.
<div style="display:inline-block; vertical-align:top;">
<button class="js-copy-bob-btn">Set clipboard to BOB</button><br /><br />
<button class="js-copy-jane-btn">Set clipboard to JANE</button>
</div>
<div style="display:inline-block;">
<textarea class="js-test-textarea" cols="35" rows="4">Try pasting into here to see what you have on your clipboard:
</textarea>
</div>
function fallbackCopyTextToClipboard(text) {
var textArea = document.createElement("textarea");
textArea.value = text;
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
var successful = document.execCommand("copy");
var msg = successful ? "successful" : "unsuccessful";
console.log("Fallback: Copying text command was " + msg);
} catch (err) {
console.error("Fallback: Oops, unable to copy", err);
}
document.body.removeChild(textArea);
}
function copyTextToClipboard(text) {
if (!navigator.clipboard) {
fallbackCopyTextToClipboard(text);
return;
}
navigator.clipboard.writeText(text).then(
function() {
console.log("Async: Copying to clipboard was successful!");
},
function(err) {
console.error("Async: Could not copy text: ", err);
}
);
}
var copyBobBtn = document.querySelector(".js-copy-bob-btn"),
copyJaneBtn = document.querySelector(".js-copy-jane-btn");
copyBobBtn.addEventListener("click", function(event) {
copyTextToClipboard("Bob");
});
copyJaneBtn.addEventListener("click", function(event) {
copyTextToClipboard("Jane");
});
'Study > 기타' 카테고리의 다른 글
[블로그 관리] 블로그로 수익내기(구글 애드센스 활용하기 + 후기) (0) | 2021.01.19 |
---|---|
[Atom] Atom 에디터에서 SFTP 사용하기 (0) | 2020.03.09 |
[기타] 네이버 클라우드 플랫폼 - 공인 아이피 신청 (0) | 2019.12.19 |
[기타] 서버 설정 (0) | 2019.12.19 |
[기타] Git 연동 (0) | 2019.12.19 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- OpenSea
- pharser
- 네이버 클라우드 플랫폼
- 비트코인
- minting
- pharser3
- 채굴
- nodejs
- 뱀파이어 사바이벌
- 지갑 생성
- 몽고db
- phaser
- GO
- phaser3
- mysql
- 이더리움 채굴기
- node.js
- P3X Redis UI
- Linux
- 회원 탈퇴
- 모니터 설정
- go lang
- node
- 민팅
- 이더리움
- remote-ftp
- Vampire Survivor
- krafterspace
- mongodb
- 뱀파이어 서바이벌
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함