JavaScript实现点击按钮复制指定区域文本(推荐)


Posted in Javascript onNovember 25, 2016

html5的webAPI接口可以很轻松的使用短短的几行代码就实现点击按钮复制区域文本的功能,不需要依赖flash。

代码如下:

/* 创建range对象 */
const range = document.createRange();
range.selectNode(element); // 设定range包含的节点对象 
/* 窗口的selection对象,表示用户选择的文本 */
const selection = window.getSelection();
if(selection.rangeCount > 0) selection.removeAllRanges(); // 将已经包含的已选择的对象清除掉
selection.addRange(range); // 将要复制的区域的range对象添加到selection对象中
document.execCommand('copy'); // 执行copy命令,copy用户选择的文本

测试:

浏览器的版本号为我测试时使用的版本。

edge浏览器、Chrome(v54.0.2840.99 m)、Firefox(v49.0.1)可用。

IE9、IE10、IE11会弹出提示询问是否将文本粘贴到剪贴板上。

IE7、IE8不支持该功能。

IOS10的Safari浏览器可用。

根据反馈,IOS9以下的Safari浏览器应该是不支持该功能的。

Demo:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<article id="article">
<h4>公园一日游</h4>
<time>2016.8.15 星期二</time>
<p>今天风和日丽,我和小红去了人民公园,玩了滑梯、打雪仗、划船,真是愉快的一天啊。</p>
</article>
<button id="copy">复制文章</button>
<textarea style="width: 500px;height: 100px;" placeholder="试一试ctrl + v"></textarea>
<script>
function copyArticle(event){
const range = document.createRange();
range.selectNode(document.getElementById('article'));
const selection = window.getSelection();
if(selection.rangeCount > 0) selection.removeAllRanges();
selection.addRange(range);
document.execCommand('copy');
}
document.getElementById('copy').addEventListener('click', copyArticle, false);
</script>
</body>
</html>

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

Javascript 相关文章推荐
csdn 论坛技术区平均给分功能
Nov 07 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
Aug 26 Javascript
jquery.ui.draggable中文文档(原文翻译)
Nov 15 Javascript
javascript快速排序算法详解
Sep 17 Javascript
node.js下when.js 的异步编程实践
Dec 03 Javascript
基于javascript实现的搜索时自动提示功能
Dec 26 Javascript
AngularJS 服务详细讲解及示例代码
Aug 17 Javascript
浅谈js内置对象Math的属性和方法(推荐)
Sep 19 Javascript
JS实现的ajax和同源策略(实例讲解)
Dec 01 Javascript
Vue中的字符串模板的使用
May 17 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
Oct 15 Javascript
JS实现简单的九宫格抽奖
Jun 28 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
Nov 25 #Javascript
Bootstrap文件上传组件之bootstrap fileinput
Nov 25 #Javascript
Bootstrap基本布局实现方法详解
Nov 25 #Javascript
浅谈jquery采用attr修改form表单enctype不起作用的问题
Nov 25 #Javascript
Bootstrap栅格系统学习笔记
Nov 25 #Javascript
JS公共小方法之判断对象是否为domElement的实例
Nov 25 #Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单
Nov 25 #Javascript
You might like
用PHP代码在网页上生成图片
2015/07/01 PHP
ext jquery 简单比较
2010/04/07 Javascript
$.format,jquery.format 使用说明
2011/07/13 Javascript
js触发asp.net的Button的Onclick事件应用
2013/02/02 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
JQuery的$命名冲突详细解析
2013/12/28 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
JavaScript获取网页中第一个链接ID的方法
2015/04/03 Javascript
JQuery分屏指示器图片轮换效果实例
2015/05/21 Javascript
程序员必知35个jQuery 代码片段
2015/11/05 Javascript
微信小程序教程系列之新建页面(4)
2017/04/17 Javascript
微信小程序如何获知用户运行小程序的场景教程
2017/05/17 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
webpack vue项目开发环境局域网访问方法
2018/03/20 Javascript
Postman模拟发送带token的请求方法
2018/03/31 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
JavaScript多种页面刷新方法小结
2019/04/04 Javascript
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
2018/10/26 Python
Python笔记之facade模式
2019/11/20 Python
python利用dlib获取人脸的68个landmark
2019/11/27 Python
Python 实现自动完成A4标签排版打印功能
2020/04/09 Python
Html5自定义字体解决方法
2019/10/09 HTML / CSS
方太官方网上商城:销售方太抽油烟机、燃气灶、消毒柜等
2017/01/17 全球购物
党员自我批评与反省材料
2014/02/10 职场文书
材料工程专业毕业生求职信
2014/03/04 职场文书
2014年五一促销活动方案
2014/03/09 职场文书
年终总结会议主持词
2014/03/17 职场文书
给校长的建议书500字
2014/05/15 职场文书
2014年社区党建工作总结
2014/11/11 职场文书
置业顾问岗位职责
2015/02/09 职场文书
CAD实训总结范文
2015/08/03 职场文书
2016应届大学生自荐信模板
2016/01/28 职场文书
导游词之日月潭
2019/11/05 职场文书
Mysql官方性能测试工具mysqlslap的使用简介
2021/05/21 MySQL
详解MySQL集群搭建
2021/05/26 MySQL