js實現(xiàn)復(fù)制粘貼的兩種方法
本文實例為大家分享了js實現(xiàn)復(fù)制粘貼的具體代碼,供大家參考,具體內(nèi)容如下
一、前沿
界面需要復(fù)制功能,所以就寫了一個作為簡單記錄
二、方法、推薦第二種。
1、第一種方法
1)、通過 document.execCommand('copy')
2)、前端代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>constructor-nodelist</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" />
</head>
<body>
<button class="copy_file" onclick="copyText('copy_file')">點(diǎn)我復(fù)制</button>
<a id="copy_file" href="復(fù)制內(nèi)容" ></a>
<script type="text/javascript" src="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.js"></script>
<script>
function copyText(str_file) {
const btn = document.querySelector('.'+str_file);
var copy_val = document.getElementById(str_file)
var copy_file = copy_val.getAttribute("href");
btn.addEventListener('click',() => {
const input = document.createElement('input');
document.body.appendChild(input);
input.setAttribute('value', copy_file);
input.select();
if (document.execCommand('copy')) {
document.execCommand('copy');
swal("復(fù)制成功!","success");
}
document.body.removeChild(input);
})
}
</script>
</body>
3)、總結(jié):主要是通過 class和id 來復(fù)制 a標(biāo)簽中的 href,把復(fù)制好的內(nèi)容放到 生成的input標(biāo)簽中,然后復(fù)制結(jié)束把 input標(biāo)簽給remove,這個你復(fù)制內(nèi)容自行發(fā)揮,和修改 js。
4)、問題:第一次點(diǎn)擊不生效,需要點(diǎn)擊兩次,暫時不解決
2、第二種方法
1)、通過 ClipboardJS 來實現(xiàn) 內(nèi)容的復(fù)制,推薦這個
2)、git地址:clipboardjs
3)、前端代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- 請自行去git項目下載 js-->
<script src="./clipboard.min.js"></script>
<link rel="stylesheet" />
<script type="text/javascript" src="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.js"></script>
</head>
<body>
<button id="btn" data-clipboard-text="str_555" onclick="copyText()">
<span>Copy</span>
</button>
</body>
</html>
<script>
function copyText() {
var btn = document.getElementById('btn');
console.log(btn);
var clipboard = new ClipboardJS(btn);
<!-- var clipboard = new ClipboardJS(btn, {-->
<!-- container: document.getElementById('btn')-->
<!-- });--> 如果你的項目是 bootstrap框架,請使用這個
clipboard.on('success', function(e) {
console.log(e);
swal("復(fù)制成功!","success");
clipboard.destroy();
});
clipboard.on('error', function(e) {
console.log(e);
swal("復(fù)制失敗","error");
clipboard.destroy();
});
}
</script>
3)、總結(jié):請一定要仔細(xì)閱讀 文檔。這個項目還是非常強(qiáng)大的,強(qiáng)烈推薦這個。
4)、問題:也是遇到了 第一次復(fù)制不生效的問題,暫時不解決了。
三、總結(jié)
1、都遇到了 第一次復(fù)制不生效的問題,后續(xù)解決把,都采用了 sweetalert 。
2、個人都只在 谷歌和火狐瀏覽器實驗了,都可以用,如果其他瀏覽器版本不能用,請自行查閱其他文章,歡迎溝通、指正。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 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)代碼高亮顯示以及點(diǎn)擊復(fù)制
- JavaScript+Html5實現(xiàn)按鈕復(fù)制文字到剪切板功能(手機(jī)網(wǎng)頁兼容)
- JS實現(xiàn)復(fù)制內(nèi)容到剪貼板功能兼容所有瀏覽器(推薦)
- js實現(xiàn)點(diǎ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ù)制功能代碼 兼容多瀏覽器
- 至2023年最好用的兼容多瀏覽器的原生js復(fù)制函數(shù)copyText
相關(guān)文章
一文帶你玩轉(zhuǎn)JavaScript的箭頭函數(shù)
在ES6中新增了函數(shù)的簡寫方式----箭頭函數(shù),箭頭函數(shù)的出現(xiàn)不僅簡化了大量代碼,也讓代碼看起來更加優(yōu)雅,同時也解決了this指向問題,下面我們就來詳細(xì)講解如何玩轉(zhuǎn)箭頭函數(shù)2022-09-09
javascript新建標(biāo)簽,判斷鍵盤輸入,以及判斷焦點(diǎn)(示例代碼)
這篇文章主要介紹了javascript新建標(biāo)簽,判斷鍵盤輸入,以及判斷焦點(diǎn)(示例代碼)。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
JS如何設(shè)置滾動屬性默認(rèn)自動滾動到底部(overflow:scroll;)
這篇文章主要給大家介紹了關(guān)于JS如何設(shè)置滾動屬性默認(rèn)自動滾動到底部(overflow:scroll;)的相關(guān)資料,通過本文介紹的的JavaScript代碼示例,你可以實現(xiàn)滾動條默認(rèn)在最底部的效果,需要的朋友可以參考下2023-10-10
js獲取URL的參數(shù)的方法(getQueryString)示例
getQueryString方法默認(rèn)返回的是 string如果是int類型,則JS使用的時候,要進(jìn)行轉(zhuǎn)換一下,下面有個不錯的示例,大家可以參考下2013-09-09

