버튼 클릭으로 ~~~ 해보자 시리즈가 되었네요!
딱히 의도하지는 않았는데....
무튼 찾으면 여기저기 나오는 코드들인데
이를 조합해서 만들어봤습니다. Textarea에 적용되는 코드들이
많았는데 이 코드는 input box에 적용했으니 역시 되지 않을까요?
/**
* URL 복사를 위한 javascript
* @author HyeYoungOh
*/
function URLcopy(which){
if (window.clipboardData) {
var target_data=eval("document."+which);
target_data.select();
zone=target_data.createTextRange();
zone.execCommand("copy");
alert("주소가 복사되었습니다. 붙여넣기 하시면 됩니다.");
} else {
try {
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var clipboard = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
trans.addDataFlavor("text/unicode");
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
str.data = "document."+which;
trans.setTransferData("text/unicode", str , text.length*2);
clipboard.setData(trans, null, Components.interfaces.nsIClipboard.kGlobalClipboard);
alert('소스가 클립보드에 복사되었습니다.');
} catch(e) {
alert("브라우저가 클립보드 사용을 지원하지 않습니다. \n 옆의 내용을 드래그하여 복사해주세요.");
}
}
}
위의 자바스크립트 함수명을 버튼 또는 이미지에 적용시키면 사용하실 수 있습니당.
이 내용은 IE에서 원활하게 돌아갑니다.
TEST 결과 크롬과 FF에서는 try, catch에 걸리네요 ㅠ_ㅠ
브라우저가 클립보드 사용을 지원하지 않는다니....
조금 더 찾아보고 크로스브라우징 지원되는 코드로 업데이트 하겠습니다.
'PROGRAM > Script Language' 카테고리의 다른 글
javascript로 숫자 형변환하기 (0) | 2016.01.26 |
---|---|
폼 추가 및 삭제에 대한 Upgrade code (0) | 2011.08.09 |
버튼 클릭으로 폼 생성과 삭제를 해보자! (0) | 2011.07.06 |
META TAG의 refresh 속성을 이용해보자구영! (2) | 2011.03.11 |
JSON 방식이란? (5) | 2011.03.10 |