XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 | stack overflow |
---|---|
출처URL | https://stackoverflow.com/questions/47879184/document-execcommandcopy-not-working-on-chrome/47880284 |
예전에는 되던 document.execCommand('copy'); 가 크롬에서 이제는 정상 작동이 안 된다 ( 2020년 기준 )
이제는 clipboard API 를 사용해서 구현을 해야한다.
단 clipboard API 는 https 에서만 작동하니, https 로 사이트 를 연결해야한다
-------------------------------------------------------------------------------
출력한 내용 전체 부분을 복사하픈 경우
그냥 div 내부 내용 전체 복사하는 형태로 소스를 하려면
<script>
function copyText() {
const textToCopy = document.getElementById('profile_summary').innerText;
// 클립보드에 텍스트를 복사합니다.
navigator.clipboard.writeText(textToCopy)
.then(() => {
alert('프로필을 복사되었습니다!');
})
.catch(err => {
console.error('복사 실패:', err);
});
}
</script>
<div id="profile_summary">
복사할 내용~~~
</div>
<a class="btn" onclick="copyText()">프로필 복사</a>
-------------------------------------------------------------------------------------------------------------------
숨겨져있는 값을 복사하고 싶은 경우 ( input 태그를 이용 )
<input id="url_field" type="hidden" value="http://google.com">
<input id="copy_btn" type="button" value="copy">
<script>
var copyBtn = document.querySelector('#copy_btn');
copyBtn.addEventListener('click', function () {
var copy_url = jQuery('#url_field').val();
navigator.clipboard.writeText(copy_url).then(() => { alert(`주소를 복사하였습니다!`); return false; });
}, false);
</script>
또는
<input id="url_field" type="hidden" value="http://google.com">
<input id="copy_btn" type="button" value="copy" onclick="copy_url()">
<script>
function copy_url() {
var copy_url = jQuery('#url_field').val();
navigator.clipboard.writeText(copy_url).then(() => { alert(`주소를 복사하였습니다!`); return false; });
}
</script>
형태로 소스를 써주면 된다.
================= 예전소스 ======================
참조 : http://codetheory.in/javascript-copy-to-clipboard-without-flash-using-cut-and-copy-commands-with-document-execcommand/
예시구문...
type="url" 로 잡아주고, select() 처리한 후 copy 명령을 내려줘야한다.
type="url" 이 input 형태로 나오기에 마치 문구처럼 나오게 하고프면 border:0px; border-shadow:none; 을 주면 된다.
<input id="url_field" type="url" value="http://google.com">
<input id="copy_btn" type="button" value="copy">
<script>
var copyBtn = document.querySelector('#copy_btn');
copyBtn.addEventListener('click', function () {
var urlField = document.querySelector('#url_field');
// select the contents
urlField.select();
document.execCommand('copy'); // or 'cut'
}, false);
</script>