js复制富文本/网页内容到黏贴板

很多js的类库都可以实现复制内容到黏贴板的功能,但是对于富文本的支持却不一定好。

你的应用如果能实现富文本的复制将可以使用户方便的黏贴到其他各种编辑器中,这将是极好的。

使用场景

对于复制富文本的需求可能有

  • 复制网页内容到黏贴板
  • 复制指定元素(html富文本)到黏贴板

下面推荐一个可以支持富文本黏贴的库clipboard-polyfill

github:https://github.com/lgarron/clipboard-polyfill

特别提醒:

以前有个类库叫clipboard-js,已经被废弃,迁移到了clipboard-polyfill

安装

npm install clipboard-polyfill

使用

引入

import * as clipboard from "clipboard-polyfill"

使用

//获取某个元素的html内容
const body = $('.contentXXX')[0].outerHTML;

//复制到黏贴板上
var dt = new clipboard.DT();
dt.setData("text/plain", "Fallback markup text.");
//设置内容
dt.setData("text/html", body);
clipboard.write(dt);

好了,这样就实现复制富文本到黏贴板的功能,由于复制内容是html内容,所以开发者可以对其内容有更好的控制

原发表于: https://www.lvbby.com/p/md/1901232155063384121002

你可能感兴趣的:(前段)