js copy功能实现

作者: 前端沐先生 | 来源:发表于2017-06-22 11:03 被阅读98次

IE - window下有个clipboardData对象,用来处理剪切板操作。

该对象下共有以下三个方法:

  1. clearData(sDataFormat) 删除剪贴板中指定格式的数据。

  2. getData(sDataFormat) 从剪贴板获取指定格式的数据。

  3. setData(sDataFormat, sData) 给剪贴板赋予指定格式的数据。返回 true 表示操作成功。

一个简易的copy实现

function copyTip(text){
    if(window.clipboardData){
        window.clipboardData.clearData();  //清除之前的数据
        window.clipboardData.setData("Text",text);  //增加新内容
    }
    return true
};

但是clipboardData只是IE的私有方法,在chrome,firefox中并未实现。

标准的document对象中有个execCommand方法

浏览器支持力度如下:

  • IE: 9+
  • chrome: 42
  • firefox: 41
  • opera: 29
  • safari: 不支持

通过document.execCommand实现的copy:

function copyTip(dom) {
    // 存储当前触焦的节点
    var currentFocus = document.activeElement;
    // 将当前传入的dom节点触焦
    dom.focus();
    // 高亮选中dom中的文本
    dom.setSelectionRange(0, dom.value.length);
    // 复制触焦节点的文本
    document.execCommand('copy');
    // 恢复原节点的触焦
    currentFocus.focus();
}

Element textarea 执行效果如下:

1484734821033.png

关于execCommand更多

@拭目以待

表格管理插件:gridmanager.lovejavascript.com && github地址
QQ交流群 (452781895):How To Make Love

《野生前端工程师》专辑中所有文章均为@拭目以待 原创,转载请注明出处。

相关文章

  • js copy功能实现

    IE - window下有个clipboardData对象,用来处理剪切板操作。 该对象下共有以下三个方法: cl...

  • 2018-12-28 js 点击事件实现复制功能

    js实现复制功能的代码如下: function copy(){var tb=document.getElement...

  • js 复制文字功能

    功能:点击按钮,复制值。 实现方法:通过原生js 的方法 document.execCommand('copy')...

  • 前端学习笔记--js实现复制功能

    js实现点击按钮,复制文字内容 核心原理利用浏览器提供的copy命令,实现复制功能 如果是输入框,可以通过 sel...

  • 实现浏览器的copy设置

    今天看了一段代码是实现浏览器copy复制功能的,我们用属性execCommand("Copy");

  • vue.js实现一键copy功能

    https://blog.csdn.net/qq_43427385/article/details/1008915...

  • vue.js实现一键copy功能

    1首先建一个copyComm.js的文件 2.在建一个directives.js文件来注册所有的全局指令 3.在m...

  • vue 简单copy功能实现

    记录自己平时遇到的小功能呢过。首页我们要实现效果图中的功能,不用使用插件就可以实现的下过,直接上图 需要粘贴代码,...

  • Put Object Copy文档

    Put Object Copy 功能描述 Put Object Copy 请求实现将一个文件从源路径复制到目标路...

  • JS实现@功能

    最近公司的PC端即时通讯工具需要添加@功能,整体软件采用的是Electron+Node.js来编写的,其实功能并不...

网友评论

    本文标题:js copy功能实现

    本文链接:https://www.haomeiwen.com/subject/ypoxcxtx.html