小程序 鼠标事件

微信小程序鼠标事件

事件分类

事件分为冒泡事件和非冒泡事件: 
1. 冒泡事件(bind):当一个组件上的事件被触发后,该事件会向父节点传递。 
2. 非冒泡事件(catch):当一个组件上的事件被触发后,该事件不会向父节点传递。 
bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。

WXML的冒泡事件列表

类型触发条件
touchstart手指触摸动作开始
touchmove手指触摸后移动
touchcancel手指触摸动作被打断,如来电提醒,弹窗
touchend手指触摸动作结束
tap手指触摸后马上离开
longtap手指触摸后,超过350ms再离开

冒泡讲解

<view id="outter" bindtap="handleTap1"> outer view <view id="middle" catchtap="handleTap2"> middle view <view id="inner" bindtap="handleTap3"> inner view </view> </view> </view>

点击inner view后只触发handleTap3,然后再触发handleTap2.不触发handleTap1。 
因为handleTap2中的绑定类型是catch,阻止了冒泡事件。

返回对象

BaseEvent 基础事件对象属性列表:

属性类型说明
typeString事件类型
timeStampInteger事件生成时的时间戳
targetObject触发事件的组件的一些属性值集合
currentTargetObject当前组件的一些属性值集合

type

代表事件的类型。

timeStamp

页面打开到触发事件所经过的毫秒数。

target

触发事件的源组件。

属性类型说明
idString事件源组件的id
tagNameString当前组件的类型
datasetObject事件源组件上由data-开头的自定义属性组成的集合
dataset

在组件中可以定义数据,这些数据将会通过事件传递给 SERVICE。 书写方式: 以data-开头,多个单词由连字符-链接,不能有大写(大写会自动转成小写)如data-element-type,最终在 event.currentTarget.dataset 中会将连字符转成驼峰elementType。

示例: 
<view data-alpha-beta="1" data-alphaBeta="2" bindtap="bindViewTap"> DataSet Test </view>

Page({bindViewTap:function(event){event.currentTarget.dataset.alphaBeta === 1 // - 会转为驼峰写法event.currentTarget.dataset.alphabeta === 2 // 大写会转为小写 } })

 

CustomEvent 自定义事件对象属性列表(继承 BaseEvent):

属性类型说明
detailObject额外的信息

detail

自定义事件所携带的数据,如表单组件的提交事件会携带用户的输入,媒体的错误事件会携带错误信息,详见组件定义中各个事件的定义。

点击事件的detail 带有的 x, y 同 pageX, pageY 代表距离文档左上角的距离。

TouchEvent 触摸事件对象属性列表(继承 BaseEvent):

属性类型说明
touchesArray触摸事件,当前停留在屏幕中的触摸点信息的数组
changedTouchesArray触摸事件,当前变化的触摸点信息的数组

touches

touches 是一个数组,每个元素为一个 Touch 对象(canvas 触摸事件中携带的 touches 是 CanvasTouch 数组)。 表示当前停留在屏幕上的触摸点。

Touch 对象
属性类型说明
identifierNumber触摸点的标识符
pageX, pageYNumber距离文档左上角的距离,文档的左上角为原点 ,横向为X轴,纵向为Y轴
clientX, clientYNumber距离页面可显示区域(屏幕除去导航条)左上角距离,横向为X轴,纵向为Y轴

changedTouches

changedTouches 数据格式同 touches。 表示有变化的触摸点,如从无变有(touchstart),位置变化(touchmove),从有变无(touchend、touchcancel)。

特殊事件: <canvas/> 中的触摸事件不可冒泡,所以没有 currentTarget。

bindtap

程序代码

<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>

对应的js

Page({tapName: function(event) { console.log(event) } })

 

 

{
"type":"tap",
"timeStamp":895, "target": { "id": "tapTest", "dataset": { "hi":"WeChat" } }, "currentTarget": { "id": "tapTest", "dataset": { "hi":"WeChat" } }, "detail": { "x":53, "y":14 }, "touches":[{ "identifier":0, "pageX":53, "pageY":14, "clientX":53, "clientY":14 }], "changedTouches":[{ "identifier":0, "pageX":53, "pageY":14, "clientX":53, "clientY":14 }] }

 

可以看到,返回的type是tap 
同时在target.id节点中也可以看到 对应的id 
在a.target.dataset.hi中也可以找到对应的data-id的值(data-hi → hi)

 

由鼠标事件(MouseEvent)可以发现:
       其中包含了许多的坐标,且每个坐标的含义都不一样。下面我们来挨个介绍常用的坐标,以及它们的含义。

一、clientX、clientY
点击位置距离当前body可视区域的x,y坐标

二、pageX、pageY
对于整个页面来说,包括了被卷去的body部分的长度

三、screenX、screenY
点击位置距离当前电脑屏幕的x,y坐标

四、offsetX、offsetY
相对于带有定位的父盒子的x,y坐标

五、x、y
和screenX、screenY一样

如图所示:

 

转载于:https://www.cnblogs.com/dianzan/p/8323485.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486953.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

agd插值算法_(1)常见插值算法

图像的缩放很好理解,就是图像的放大和缩小。传统的绘画工具中,有一种叫做“放大尺”的绘画工具&#xff0c;画家常用它来放大图画。当然&#xff0c;在计算机上&#xff0c;我们不再需要用放大尺去放大或缩小图像了&#xff0c;把这个工作交给程序来完成就可以了。下面就来讲讲…

5条出人意外的大脑秘密,奇奇怪怪的知识又增加了!

来源&#xff1a;混沌巡洋舰本文授权摘自《人体简史》&#xff0c;作者 比尔布莱森 &#xff0c;畅销书《万物简史》作者。1 你的大脑80%都是水作为一项纯粹的奇迹&#xff0c;人类的大脑长得毫不起眼。首先&#xff0c;它有75%~80&#xff05;都是水&#xff0c;其余的主要成分…

sublime 设置新建文件自动添加author(作者)等文件头信息

很多时候, sublime 自带自动添加文件头信息, 但是并不是我们想要比如下面这样的:新建一个python文件 自动添加的author 信息 上面并不是我想要的, 我想要下面这样的效果: 这就需要我们设置插件来自定义化, 步骤1) 安装 file Header 插件 (一般默认已经安装)2) 设置变量 比如aut…

文章标题(备注)

现在也裁员了吗&#xff1f;怎么感觉越来越垃圾 这个又是什么&#xff1f;真搞笑&#xff0c;我也没开隐私呀

linux 的swap具体分析_SWaP的SWAP分区分析

展开全部SWAP就是LINUX下的虚拟内存分区&#xff0c;它62616964757a686964616fe78988e69d8331333361303030的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用 。它和Windows系统的交换文件作用类似&#xff0c;但是它是一段连续的磁盘空间&#xff0c;…

你住的城市7.5亿年前长啥样?这张互动地图能让你看到

大数据文摘出品来源&#xff1a;CNN编译&#xff1a;Hippo一位加利福尼亚的古生物学家绘制了一张交互地图&#xff0c;使人们可以看到他们的家乡在超过7.5亿年的大陆漂移中迁移了多远。文摘菌顺手搜了一下7.5亿年前的北京&#xff0c;如下图中红点所示&#xff0c;那时候的北京…

李国杰院士:关于人工智能本质和价值的13个判断,谨防重蹈覆辙!

来源&#xff1a;科技金眼本文摘自最新出版的《中国科技热点述评2019》&#xff08;科学出版社&#xff0c;2020年7月&#xff09;。为了避免曲解院士意思&#xff0c;我们这次只做院士思想的搬运工&#xff0c;全部是原汁原味的干货摘抄。作为读书笔记与大家分享&#xff0c;全…

导航能力堪比GPS!动物们是这样做到的

相关新闻截图文章转载自微信公众号GIS圈&#xff0c;来源&#xff1a;新华网&#xff08;内容来源科技日报&#xff09;&#xff0c;版权归原作者及刊载媒体所有。不久前&#xff0c;一则新闻引发了众多网友关注&#xff1a;内蒙古巴彦淖尔市乌拉特草原上的一只骆驼去年被卖到了…

百度李彦宏:无人驾驶何时商用

来源&#xff1a;TechWeb.com.cn【TechWeb】9月15日消息&#xff0c;百度世界2020大会今日线上开幕&#xff0c;百度创始人李彦宏化身主持人兼主播&#xff0c;携手央视主持人康辉共同主持了这一场线上直播&#xff0c;为大家带来了百度在无人驾驶、AI能力、AI应用等领域的最新…

郭仁忠:基于GIS的智慧城市工程逻辑 | GTC主会场报告(视频+PPT)

来源&#xff1a;GIS软件技术大会“智慧城市建设如火如荼&#xff0c;从概念、规划方案到落地实现&#xff0c;业界都有着不同的理解&#xff0c;呈现出“百家争鸣”的局面。在2020 GIS 软件技术大会主题大会上&#xff0c;中国工程院院士、深圳大学智慧城市研究院院长郭仁忠作…

js json过滤_如何在浏览器不崩溃的情况下过滤 200 万行数据?

最近我分配到了一个非常有趣的任务&#xff1a;在前端显示 1GB 文件和 200 万行数据&#xff0c;并实现过滤&#xff0c;在这篇文章中&#xff0c;我将分享我是如何完成这个任务的。背景我曾经创建了一个简单的 React 应用程序。这个应用程序从服务器加载一些数据&#xff0c;并…

联合国旗舰报告《全球生物多样性展望》发布:面对最糟糕的生物多样性保护成绩单,人类该何去何从?...

来源&#xff1a;阿拉善SEE公益机构2020年9月15日 &#xff0c;联合国《生物多样性公约》&#xff08;CBD&#xff09;发布了一份重量级的旗舰报告——第五版《全球生物多样性展望》&#xff08;Global Biodiversity Outlook 5&#xff09;。该报告显示&#xff0c;CBD于2010年…

阿里云发布首台云电脑“无影”,传统 PC 已“末路”?

来源 | 硬核编辑部作者 | 硬核云顶宫在9月17日的云栖大会上&#xff0c;阿里云智能总裁、达摩院院长发布阿里云第一台云电脑——“无影”。这是一台长在云上的“超级电脑”&#xff0c;只需将一张名片夹大小的 C-Key 上连接一块屏幕&#xff0c;就可以进入专属云电脑桌面&#…

金星可能存在生命?科学家发现大气中有磷化氢,剧毒气体或是生物代谢产物...

文章来源&#xff1a;量子位最新消息&#xff0c;英国皇家天文学会发布了一条激动人心的新进展&#xff1a;金星上可能存在着生命迹象。因为科学家发现&#xff0c;金星大气中存在着浓度异常的磷化氢(PH3)气体&#xff0c;达到20ppb&#xff08;亿分之二&#xff09;。这种剧毒…

3D芯片大脑:在芯片上培养脑细胞,还能用来测试新药

来源&#xff1a;MEMS在科学实验中&#xff0c;研究人员往往首先以小白鼠为实验对象。虽然是科研需要&#xff0c;但有人谴责这是对生命的亵渎。此外&#xff0c;动物测试成本高且耗时&#xff0c;同时无法精确体现人类的反应。那么有没有其他替代品呢&#xff1f;来自劳伦斯利…

68个单位134项 | 2020年国家自然科学基金专项项目立项名单发布

来源&#xff1a;自然科学基金委、青塔9月17日&#xff0c;国家自然科学基金委基金查询系统公布了2020年专项项目立项名单。本年度专项项目共立项134项&#xff0c;来自68个单位。其中&#xff0c;北京大学立项项目数量、金额均最多&#xff0c;共9项&#xff0c;合计资助金额1…

mysql atlas php_Mysql中间件代理 Atlas

本文接上文介绍atlas的安装配置&#xff0c;以及借助keepalive软件实现altas的ha&#xff0c;避免由于atlas故障&#xff0c;导致数据库服务中断的情况出现&#xff1a;一&#xff1a;环境介绍Atlas主&#xff1a;192.168.1.12/# yum -y install openssl openssl-devel# wget h…

灵魂出窍的神经生物学基础!

来源&#xff1a;孙学军科学网博客过量使用氯胺酮&#xff0c;会导致使用者出现幻听幻象&#xff0c;甚至灵魂出窍的感觉。这种灵魂出窍的感觉在学术上被成为分离麻醉&#xff0c;常被描述为感觉脱离现实或有一种“脱离身体”的体验。这种现象不仅见于服用氯胺酮&#xff0c;也…

基于mycat的mysql_基于mycat实现mysql的读写分离

需要具备以下环境1 mysql主从复制2 jdk安装以及环境变量配置以下为我的演示参考&#xff1a;192.168.142.26 master- mysql 具备主从主从复制条件192.168.142.25 slave- mysql 具备主从主从复制条件192.168.142.27 slave- mysql 具备主从主从复制条件192.168.142.28 myca…

《WeCity未来城市2.0白皮书》全文发布

全文共计899字60图&#xff0c;预计阅读时间12分钟来源 | 腾讯研究院&#xff08;转载请注明来源&#xff09;编辑 | 石煜倩新基建浪潮之下&#xff0c;新型城镇化的建设正在加速&#xff0c;这为数字技术与经济社会融合带来了更多的想象空间&#xff1b;同时后疫情时代&#x…