至2023年最好用的兼容多瀏覽器的原生js復(fù)制函數(shù)copyText
更新時間:2023年05月02日 16:39:18 作者:前端白雪
因為后臺需要增加一些復(fù)制一些內(nèi)容非表單中內(nèi)容,那么下面這個函數(shù)就非常的好用了,其實也是利用了表單的數(shù)據(jù)權(quán)限比較容易突破,下面是具體的實現(xiàn)函數(shù),大家可以拿走
JS復(fù)制文本到剪切板 copyText
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
</head>
<body>
<span class="orange" id="shareUrl" data-url="www.baidu.com">www.baidu.com</span>
<script>
// 復(fù)制
function copyText(text) {
var textArea = document.createElement("textarea");
// textArea.style['display']='none'
textArea.style['position'] = 'absolute'
textArea.style['top'] = '0'
textArea.style['left'] = '0'
textArea.value = text;
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
var successful = document.execCommand('copy');
var msg = successful ? 'successful' : 'unsuccessful';
console.log(msg)
} catch (err) {
console.error('復(fù)制失敗', err);
}
document.body.removeChild(textArea);
if (successful) {
return true
}
};
$(function() {
var shareUrl = $("#shareUrl").data("url");
$("#shareUrl").click(function() {
var shareUrl = $("#shareUrl").data("url");
if (copyText(shareUrl)) {
alert("復(fù)制成功");
}
})
})
</script>
</body>
</html>腳本之家小編刪減后的代碼,減少了判斷,其實上面的代碼是非常好的
function copyText (text) {
//生成一個textarea對象
var textArea = document.createElement('textarea');
//設(shè)置屬性
textArea.style.position = 'fixed';
textArea.style.top = 0;
textArea.style.left = 0;
textArea.style.width = '2em';
textArea.style.height = '2em';
textArea.style.padding = 0;
textArea.style.border = 'none';
textArea.style.outline = 'none';
textArea.style.boxShadow = 'none';
textArea.style.background = 'transparent';
textArea.value = text;
//添加到頁面body
document.body.appendChild(textArea);
textArea.select();
//執(zhí)行
var msg = document.execCommand('copy') ? '成功' : '失敗';
Popup('復(fù)制內(nèi)容' + msg);
//移除對象
document.body.removeChild(textArea);
}
function Popup(message){
var span=document.createElement('span')
span.innerHTML=message || 'default'
span.className='popupStyle'
span.style.display='block'
document.body.appendChild(span)
setTimeout(()=>{
span.remove()
},1000)
}對了不要忘了css樣式
.popupStyle{
width:180px;
height:50px;
background-color: rgb(85,85,85);
/* display:none; */
color:#fff;
text-align:center;
line-height:50px;
border-radius:5px;
padding:0;
position:fixed;
z-index:1;
top:30%;
left:50%;
transform:translateX(-50%);
} 對于之前的一些代碼,可以當(dāng)個學(xué)習(xí)參考,原生js實現(xiàn)。
您可能感興趣的文章:
- JavaScript實現(xiàn)一鍵復(fù)制文本功能的示例代碼
- Web js實現(xiàn)復(fù)制文本到粘貼板
- 使用js實現(xiàn)復(fù)制功能
- 使用?JS?復(fù)制頁面內(nèi)容的三種方案
- JavaScript實現(xiàn)一鍵復(fù)制內(nèi)容剪貼板
- js復(fù)制文本到粘貼板(Clipboard.writeText())
- JS實現(xiàn)一鍵復(fù)制
- Vue中使用highlight.js實現(xiàn)代碼高亮顯示以及點擊復(fù)制
- js實現(xiàn)復(fù)制粘貼的兩種方法
- JavaScript+Html5實現(xiàn)按鈕復(fù)制文字到剪切板功能(手機網(wǎng)頁兼容)
- JS實現(xiàn)復(fù)制內(nèi)容到剪貼板功能兼容所有瀏覽器(推薦)
- js實現(xiàn)點擊復(fù)制當(dāng)前文本到剪貼板功能(兼容所有瀏覽器)
- 簡單實現(xiàn)兼容各大瀏覽器的js復(fù)制內(nèi)容到剪切板
- JavaScript 實現(xiàn)完美兼容多瀏覽器的復(fù)制功能代碼
- 兼容主流瀏覽器的JS復(fù)制內(nèi)容到剪貼板
- js實現(xiàn)的復(fù)制兼容chrome和IE
- 兼容所有瀏覽器的js復(fù)制插件Zero使用介紹
- 用js將內(nèi)容復(fù)制到剪貼板兼容瀏覽器
- js復(fù)制網(wǎng)頁內(nèi)容并兼容各主流瀏覽器的代碼
- JS復(fù)制內(nèi)容到剪切板的實例代碼(兼容IE與火狐)
- JS/FLASH實現(xiàn)復(fù)制代碼到剪貼板(兼容所有瀏覽器)
- 多瀏覽器兼容性比較好的復(fù)制到剪貼板的js代碼
- GWT中復(fù)制到剪貼板 js+flash實現(xiàn)復(fù)制 兼容性比較好
- 兼容IE與Firefox的js 復(fù)制代碼
- JavaScript 復(fù)制功能代碼 兼容多瀏覽器
相關(guān)文章
使用javascript函數(shù)編寫簡單銀行取錢存錢流程
本文通過實例代碼給大家講解了使用javascript函數(shù)編寫簡單銀行取錢存錢流程,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-05-05
用javascript讀取xml文件讀取節(jié)點數(shù)據(jù)
這篇文章主要介紹了用javascript讀取xml文件讀取節(jié)點數(shù)據(jù)的具體實現(xiàn),需要的朋友可以參考下2014-08-08
html中鼠標(biāo)滾輪事件onmousewheel的處理方法
下面小編就為大家?guī)硪黄猦tml中鼠標(biāo)滾輪事件onmousewheel的處理方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11
JS實現(xiàn)圖片點擊后出現(xiàn)模態(tài)框效果
這篇文章主要介紹了JS實現(xiàn)圖片點擊后出現(xiàn)模態(tài)框效果,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-05-05
JavaScript 選中文字并響應(yīng)獲取的實現(xiàn)代碼
當(dāng)鼠標(biāo)選擇一段文字時,對這個事件產(chǎn)生響應(yīng),并且將選中的文字傳遞出去。2011-08-08

