JavaScript 点击触发复制功能实例详解


Posted in Javascript onNovember 02, 2018

摘要:

js调用复制功能使用:

document.execCommand("copy", false);

 document.execCommand()方法功能很强大,了解更多请戳:https://developer.mozilla.org/zh-CN/docs/Web/API/Document/execCommand

正文:

调用以上方法,就实现了copy功能,可是,在调用之前,你需要先选中需要复制的内容。

选中需要复制的内容可使用select()方法,然而该方法只能选中input或者textarea标签里的内容。

因此,如果你想实现点击一个按钮,就复制一段话的功能

第一:如果这段话是被input或textarea标签包裹,则可以直接只用select(),

第二:如果是其他任意标签包裹的话,则需要新creat一个input标签,给该input标签赋value,然后使用select()方法,最后将该input标签remove了。

完整代码:

function copy(that){
var inp =document.createElement('input'); // create input标签
document.body.appendChild(inp) // 添加到body中
inp.value =that.textContent // 给input设置value属性为需要copy的内容
inp.select(); // 选中
document.execCommand('copy',false); // copy已经选中的内容
inp.remove(); // 删除掉这个dom
}
<p onclick="copy(this)">hello man</p>

小知识点:

1:select()使用范围;

2:删除一个dom,使用node.remove();

3:调用复制功能使用document.execCommand()方法;

参考链接:

https://stackoverflow.com/questions/45071353/javascript-copy-text-string-on-click

总结

以上所述是小编给大家介绍的JavaScript 点击触发复制功能 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
比较全面的event对像在IE与FF中的区别 推荐
Sep 21 Javascript
firefox firebug中文入门教程 脚本之家新年特别版
Jan 02 Javascript
jquery trim() 功能源代码
Feb 14 Javascript
JQuery中使用Ajax赋值给全局变量异常的解决方法
Jan 10 Javascript
基于jQuery实现下拉框
Nov 24 Javascript
javascript工厂方式定义对象
Dec 26 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
Sep 06 Javascript
浅谈js的异步执行
Oct 18 Javascript
Vue实现搜索 和新闻列表功能简单范例
Mar 16 Javascript
echarts大屏字体自适应的方法步骤
Jul 12 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
Sep 23 Javascript
在Vue.js中使用TypeScript的方法
Mar 19 Javascript
微信小程序实现留言板(Storage)
Nov 02 #Javascript
微信小程序实现留言板功能
Nov 02 #Javascript
小程序实现留言板
Nov 02 #Javascript
js中的闭包实例展示
Nov 01 #Javascript
微信小程序实现登录遮罩效果
Nov 01 #Javascript
在vue里使用codemirror遇到的问题
Nov 01 #Javascript
vue中使用codemirror的实例详解
Nov 01 #Javascript
You might like
PHP set_time_limit(0)长连接的实现分析
2010/03/02 PHP
PHP中判断变量为空的几种方法小结
2013/11/12 PHP
thinkphp模板的包含与渲染实例分析
2014/11/26 PHP
PHP中实现获取IP和地理位置类分享
2015/02/10 PHP
PHP函数引用返回的实例详解
2016/09/11 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
php 时间time与日期date之间的使用详解及区别
2016/11/07 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
70+漂亮且极具亲和力的导航菜单设计国外网站推荐
2011/09/20 Javascript
JS中获取数据库中的值的方法
2013/07/14 Javascript
javascript的事件触发器介绍的实现
2014/06/05 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
2016/05/26 Javascript
JavaScript探测CSS动画是否已经完成的方法
2016/08/30 Javascript
Nodejs 获取时间加手机标识的32位标识实现代码
2017/03/07 NodeJs
vue简单练习 桌面时钟的实现代码实例
2019/09/19 Javascript
详解Vue之计算属性
2020/06/20 Javascript
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
在Python中处理字符串之isdigit()方法的使用
2015/05/18 Python
python入门基础之用户输入与模块初认识
2016/11/14 Python
Python实现的凯撒密码算法示例
2018/04/12 Python
基于Python pip用国内镜像下载的方法
2018/06/12 Python
Python requests库用法实例详解
2018/08/14 Python
Python操作Excel插入删除行的方法
2018/12/10 Python
wxPython之wx.DC绘制形状
2019/11/19 Python
Python字符串hashlib加密模块使用案例
2020/03/10 Python
Python基于paramunittest模块实现excl参数化
2020/04/26 Python
使用matlab 判断两个矩阵是否相等的实例
2020/05/11 Python
python实现取余操作的简单实例
2020/08/16 Python
学院领导推荐信
2013/10/30 职场文书
优秀毕业自我鉴定
2014/02/15 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
计算机考试作弊检讨书1000字
2015/01/01 职场文书
培训感想范文
2015/08/07 职场文书
Apache Hudi的多版本清理服务彻底讲解
2022/03/31 Servers
阿里云k8s服务升级时502错误 springboot项目应用
2022/04/09 Servers