js實現(xiàn)復制粘貼的兩種方法
本文實例為大家分享了js實現(xiàn)復制粘貼的具體代碼,供大家參考,具體內(nèi)容如下
一、前沿
界面需要復制功能,所以就寫了一個作為簡單記錄
二、方法、推薦第二種。
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')">點我復制</button>
<a id="copy_file" href="復制內(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("復制成功!","success");
}
document.body.removeChild(input);
})
}
</script>
</body>
3)、總結:主要是通過 class和id 來復制 a標簽中的 href,把復制好的內(nèi)容放到 生成的input標簽中,然后復制結束把 input標簽給remove,這個你復制內(nèi)容自行發(fā)揮,和修改 js。
4)、問題:第一次點擊不生效,需要點擊兩次,暫時不解決
2、第二種方法
1)、通過 ClipboardJS 來實現(xiàn) 內(nèi)容的復制,推薦這個
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("復制成功!","success");
clipboard.destroy();
});
clipboard.on('error', function(e) {
console.log(e);
swal("復制失敗","error");
clipboard.destroy();
});
}
</script>
3)、總結:請一定要仔細閱讀 文檔。這個項目還是非常強大的,強烈推薦這個。
4)、問題:也是遇到了 第一次復制不生效的問題,暫時不解決了。
三、總結
1、都遇到了 第一次復制不生效的問題,后續(xù)解決把,都采用了 sweetalert 。
2、個人都只在 谷歌和火狐瀏覽器實驗了,都可以用,如果其他瀏覽器版本不能用,請自行查閱其他文章,歡迎溝通、指正。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- JavaScript實現(xiàn)一鍵復制文本功能的示例代碼
- Web js實現(xiàn)復制文本到粘貼板
- 使用js實現(xiàn)復制功能
- 使用?JS?復制頁面內(nèi)容的三種方案
- JavaScript實現(xiàn)一鍵復制內(nèi)容剪貼板
- js復制文本到粘貼板(Clipboard.writeText())
- JS實現(xiàn)一鍵復制
- Vue中使用highlight.js實現(xiàn)代碼高亮顯示以及點擊復制
- JavaScript+Html5實現(xiàn)按鈕復制文字到剪切板功能(手機網(wǎng)頁兼容)
- JS實現(xiàn)復制內(nèi)容到剪貼板功能兼容所有瀏覽器(推薦)
- js實現(xiàn)點擊復制當前文本到剪貼板功能(兼容所有瀏覽器)
- 簡單實現(xiàn)兼容各大瀏覽器的js復制內(nèi)容到剪切板
- JavaScript 實現(xiàn)完美兼容多瀏覽器的復制功能代碼
- 兼容主流瀏覽器的JS復制內(nèi)容到剪貼板
- js實現(xiàn)的復制兼容chrome和IE
- 兼容所有瀏覽器的js復制插件Zero使用介紹
- 用js將內(nèi)容復制到剪貼板兼容瀏覽器
- js復制網(wǎng)頁內(nèi)容并兼容各主流瀏覽器的代碼
- JS復制內(nèi)容到剪切板的實例代碼(兼容IE與火狐)
- JS/FLASH實現(xiàn)復制代碼到剪貼板(兼容所有瀏覽器)
- 多瀏覽器兼容性比較好的復制到剪貼板的js代碼
- GWT中復制到剪貼板 js+flash實現(xiàn)復制 兼容性比較好
- 兼容IE與Firefox的js 復制代碼
- JavaScript 復制功能代碼 兼容多瀏覽器
- 至2023年最好用的兼容多瀏覽器的原生js復制函數(shù)copyText
相關文章
javascript檢查瀏覽器是否支持flash的實現(xiàn)代碼
這篇文章主要介紹了javascript檢查瀏覽器是否支持flash的實現(xiàn)代碼,需要的朋友可以參考下2014-08-08

