JS--通过按钮直接把input或者textarea里的值复制到粘贴板里

function  copyToClipboard(elem) {
     // create hidden text element, if it doesn't already exist
     var  targetId =  "_hiddenCopyText_" ;
     var  isInput = elem.tagName ===  "INPUT"  || elem.tagName ===  "TEXTAREA" ;
     var  origSelectionStart, origSelectionEnd;
     if  (isInput) {
         // can just use the original source element for the selection and copy
         target = elem;
         origSelectionStart = elem.selectionStart;
         origSelectionEnd = elem.selectionEnd;
     else  {
         // must use a temporary form element for the selection and copy
         target = document.getElementById(targetId);
         if  (!target) {
             var  target = document.createElement( "textarea" );
             target.style.position =  "absolute" ;
             target.style.left =  "-9999px" ;
             target.style.top =  "0" ;
             target.id = targetId;
             document.body.appendChild(target);
         }
         target.textContent = elem.textContent;
     }
     // select the content
     var  currentFocus = document.activeElement;
     target.focus();
     target.setSelectionRange(0, target.value.length);
 
     // copy the selection
     var  succeed;
     try  {
         succeed = document.execCommand( "copy" );
     catch (e) {
         succeed =  false ;
     }
     // restore original focus
     if  (currentFocus &&  typeof  currentFocus.focus ===  "function" ) {
         currentFocus.focus();
     }
 
     if  (isInput) {
         // restore prior selection
         elem.setSelectionRange(origSelectionStart, origSelectionEnd);
     else  {
         // clear temporary content
         target.textContent =  "" ;
     }
     return  succeed;
}
 
//我们可以这样直接调用这个方法:
 
//copyToClipboard(document.getElementById("name"));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值