分享好友 最新动态首页 最新动态分类 切换频道
详解浏览器中的粘贴事件 paste onpaste 事件
2024-12-27 12:02

在最新的H5 API里已经有了对粘贴事件的支持, 事件名为paste, 平时用的较少,但最近想做一个粘贴板管理器,于是就调研了一下这个粘贴,复制事件.

那么调研的第一步是什么那?

当然是百度了,但高手都不百度,直接控制台调试

创建一个id为editor的文本域, 为其添加一个paste事件的监听

控制台打印出来是这样的

处理函数的参数是even,even的数据结构如上图

明眼人一眼就能看出那个数据自己有用,其他几个属性稀松平常,唯独clipboardData这个属性比较 特殊,这是一个DataTransfer类型的数据.估计我们需要的粘贴对象就存储在这个clipboardData这个属性里面

果不其然,查阅资料后我得知,

DataTransfer这个数据类型的相关资料,尽管第一次接触这个类型,但还是很快能找到自己想要的,所以,知识的搜索能力对于一个人的成长必不可少.

如下:

The object is used to hold the data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types. For more information about drag and drop, see .

This object is available from the property of all .

Gets the type of drag-and-drop operation currently selected or sets the operation to a new type. The value must be , , or .

Provides all of the types of operations that are possible. Must be one of , , , , , , , or .

Contains a list of all the local files available on the data transfer. If the drag operation doesn't involve dragging files, this property is an empty list.

Read only

Gives a object which is a list of all of the drag data.

Read only

An array of giving the formats that were set in the event.

Standard methods

Remove the data associated with a given type. The type argument is optional. If the type is empty or not specified, the data associated with all types is removed. If data for the specified type does not exist, or the data transfer contains no data, this method will have no effect.

Retrieves the data for a given type, or an empty string if data for that type does not exist or the data transfer contains no data.

Set the data for a given type. If data for the type does not exist, it is added at the end, such that the last item in the types list will be the new format. If data for the type already exists, the existing data is replaced in the same position.

Set the image to be used for dragging if a custom one is desired.

使用getData()方法我们可以获取自己想要的粘贴元数据,如果粘贴对象是文本,html的话可以这样获取参数,但对于文件,比如一个截图后,那么这是就要使用even.clipboardData.files 来获取了,这里获取的是一个文件列表. 可以直接上传到服务器,不过要想在Chrome中预览你的截图,那就需要使用另外一个类了,FileReader

根据这个DataTransfer类的解释我们不难得出,这个东西主要是用于drop drag两个事件里多用

以下这个是文本粘贴的数据 可以使用even.clipboardData.getDate('text/plain') 获取粘贴的数据

完整代码.复制截图到富文本编译域里

最新文章
腾讯Q1财报:QQ智能机月活用户首破6亿大关
  腾讯主席兼首席执行官马化腾表示:2015年第一季度,我们扩大了移动用户的基数,深化了与用户互动的方式,也取得了稳健的财务业绩。我们主要的移动产品扩大了在中国互联网行业的领先地位,同时也持续拓展了用户在其上的行为,从社交通信
百度外推蜘蛛池,解锁网络营销新境界,百度蜘蛛池 关键词排名
百度外推蜘蛛池是一种网络营销工具,通过模拟搜索引擎蜘蛛的抓取行为,将网站信息快速传播到各大搜索引擎,提高网站关键词排名。该工具可以模拟不同IP的蜘蛛访问,增加网站权重,提升搜索引擎排名。使用百度蜘蛛池可以快速提高网站流量和曝
直通车推广的扣费规则是什么?出价技巧分享
卖家们如果选择了直通车推广,那急需了解的就是直通车推广的扣费规则和出价技巧,如果各位想要了解这方面的知识点,那我今天就来给各位卖家们详细的介绍。1、按词扣费:用户搜索单个词,设了该关键词的宝贝就会在淘宝展示位上出现。当有人
请回答2024丨极兔速递副总裁桂宁:“1500亿件”见证中国快递市场的繁荣活跃
封面新闻记者 付文超11月17日16时29分,根据国家邮政局实时监测数据,一件由极兔速递承运的农特包裹从甘肃天水发往重庆,成为今年第1500亿件快递。这标志着我国快递年度业务量首次突破1500亿件大关,再创历史新高。桂宁:2024年,在一系列
眉山中专(眉山中专学校排名)
摘要:本文将介绍眉山中专的概况,包括学校的历史和发展、教育理念以及教学特色。同时还将推荐与眉山中专相关的长尾关键词,并为每个关键词一篇独立的文章。2. 眉山中专以其优质的教育资源和专业化的教学,培养了大批优秀的职业人才。毕业
预算有限也能享受旗舰体验:2023年三款性价比旗舰手机推荐
今年手机市场竞争白热化,“买新不买旧” 常被提及,可今年手机价格不断攀升,让想入手旗舰机却预算有限的人犯难。好在随着新机发布,往年旗舰机有了小幅度降价。回顾去年,手机品牌激战正酣,真我 GT5 Pro、三星 Galaxy S23 Ultra 和华为
往年12月14日实时位置共享技术指南与操作要点解析
随着科技的快速发展,实时位置共享已成为我们日常生活中不可或缺的功能,特别是在特殊日期,如亲朋好友聚会、重要活动参与等场合,实时位置共享能够为我们带来极大的便利,本文将重点介绍往年12月14日如何进行实时位置共享,包括要点、要点
ToDesk下载
下载ToDesk到手机上面的方法有很多。 安卓系统的手机可以在豌豆荚或者PP助手等手机助手里面一键下载安装!也可以通过电脑端用手机扫描ToDesk下载的二维码获取下载链接!有手机端直接访问网页下载也是可以的,下面就为大家介绍下手机网页怎
超越经典!全面解析街机打砖块小游戏合集
街机打砖块小游戏是经典游戏中备受欢迎且具有广泛影响力的一种类型。自从上世纪70年代首次亮相以来,这类游戏一直以其简单的玩法和上瘾的挑战性深受玩家喜爱。本文将带您深入了解街机打砖块小游戏的起源、发展历程以及其中的一些经典代表作
相关文章
推荐文章
发表评论
0评