![微信小程序 有方法解决多点触控事件么,第1张 微信小程序 有方法解决多点触控事件么,第1张](/aiimages/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F+%E6%9C%89%E6%96%B9%E6%B3%95%E8%A7%A3%E5%86%B3%E5%A4%9A%E7%82%B9%E8%A7%A6%E6%8E%A7%E4%BA%8B%E4%BB%B6%E4%B9%88.png)
微信小程序 触控
事件: 微信小程序的"事件"挺有意思。看了说明文档后发现它的功能很全,事件可以向父节点传递,而且打印这个事件的信息很透明,调试起来应该非常方便。 接下来把文档copy过来 原文地址:https://mp/debug/wxadoc/dev/framework/view/wxml/event.html 》》》什么是事件 事件是视图层到逻辑层的通讯方式。事件可以将用户的行为反馈到逻辑层进行处理。事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数。事件对象可以携带额外信息,如id, dataset, touches。事件的使用方式 在组件中绑定一个事件处理函数。 如bindtap,当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数。 <view id="tapTest" data-hi="MINA" bindtap="tapName">Click me! </view> 在相应的Page定义中写上相应的事件处理函数,参数是event。 Page({tapName: function(event) {console.log(event)} }) 可以看到log出来敏困的信息大致如下: { "type": "tap", "timeStamp": 1252, "target": {"id": "tapTest","offsetLeft": 0,"offsetTop": 0,"dataset": {"hi": "MINA"} }, "currentTarget": {"id": "tapTest","offsetLeft": 0,"offsetTop": 0,"dataset": {"hi": "MINA"} }, "touches": [{"pageX": 30,"pageY": 12,"clientX": 30,"clientY": 12,"screenX": 112,"screenY": 151 }], "detail": {"x": 30,"y": 12 } } 事件详解 事件分类 事件分为冒泡事件和非冒泡事件: 冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。 非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。 》》》事件分类 touchstart
手指触摸touchmove 手指触摸后移动touchcancel 手指触摸动作被打断,如d窗和来电提醒touchend 手指触摸动作结束tap 手指触摸后离开longtap 手指触摸后后,超过350ms离开》》》事件绑定 事件绑定的写法同组件的属性,以 key、value 的形式。 key 以bind或catch开头,羡拿行然后跟上事件的类型,如bindtap, catchtouchstartvalue 是一个字符串,需要在对应的 Page 中定义同名的函数。不然当触发事件的时候会报错。 bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。上面简单介绍了小程序事件基础,是时候彰显"事件"的威力: 单击(tap)
双击(dbtap)长按(longtap)滑兄哗动多点触控1.单击 单击事件由touchstart、touchend组成,touchend后触发tap事件。 <view> <button type="primary" bindtouchstart="mytouchstart" bindtouchend="mytouchend" bindtap="mytap">点我吧</button> </view> mytouchstart: function(e){ console.log(e.timeStamp + '- touch start') },mytouchend: function(e){ console.log(e.timeStamp + '- touch end') },mytap: function(e){ console.log(e.timeStamp + '- tap') } 2.双击 双击事件由两个单击事件组成,两次间隔时间小于300ms认为是双击;微信官方文档没有双击事件,需要开发者自己定义处理。 <view> <button type="primary" bindtap="mytap">点我吧</button> </view> 3.长按 长按事件手指触摸后,超过350ms再离开。 <view> <button type="primary" bindtouchstart="mytouchstart" bindlongtap="mylongtap"bindtouchend="mytouchend" bindtap="mytap">点我吧</button> </view> mytouchstart: function(e){ console.log(e.timeStamp + '- touch start') },//长按事件mylongtap: function(e){ console.log(e.timeStamp + '- long tap') },mytouchend: function(e){ console.log(e.timeStamp + '- touch end') },mytap: function(e){ console.log(e.timeStamp + '- tap') }单击、双击、长按属于点触事件,会触发touchstart、touchend、tap事件,touchcancel事件只能在真机模拟,不多说了。 事件触发顺序单击touchstart → touchend → tap双击touchstart → touchend → tap → touchstart → touchend → tap长按touchstart → longtap → touchend → tap 4.滑动 手指触摸屏幕并移动,为了简化起见,下面以水平滑动和垂直滑动为例。 滑动事件由touchstart、touchmove、touchend组成 坐标图: 以屏幕左上角为原点建立直角坐标系。第四象限为手机屏幕,Y轴越往下坐标值越大(注意跟数学象限的区别)。假设A点为touchstart事件触摸点,坐标为A(ax,ay),然后手指向上滑动到点B(bx,by),就满足条件by <ay 同理,向右滑动到C(cx,cy),满足cx >ax;向下滑动到D(dx,dy),满足dy >ay;向左移动到E(ex,ey)满足ex <ax.计算线段AB在Y轴上投影长度为m,在X轴上的投影长度为n计算r = m/n,如果r >1,视为向上滑动。同理计算线段AC,AD,AE在Y轴投影长度与X轴的投影长度之比,得出向右向下向左的滑动。以上没考虑r为1的情况。 <view> <button type="primary" bindtouchstart="mytouchstart" bindtouchmove="mytouchmove">点我吧</button> </view> 5.多点触控 由于模拟器尚不支持多点触控,内测开放后,继续补充。 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
1、首先打开自己的微信,找到小程序,然后点击打开进入。
2、在搜索框中输入“手持d幕”,辩漏然后点击进入小程序。
3、然后点击框出来的“我爱黄家驹”选项进入。
4、然后进去之后,把鼠标放在字体里面,可以输入自己想要展现的字,这里可以输入时间,一个数字对应一个。
5、输入完成后,这就是最终的效果。
扩展资料
iPhone的多点触控和手势 *** 控是基于FingerWorks发展的技术,iPhone的触屏具有热感功能,用户可利用手指在触屏上滑动进行手机 *** 作;
虽然触控笔可用于iPhone的手指触控屏幕,但大部分的手套和触控笔都能防止必要的导电性。iPhone3GS后来还有耐指纹疏油涂层,能避腔灶清免用户的指伍前纹留在iPhone的屏幕上。
Phone的用户接口上有一个很小的硬件,位于屏幕下方的圆形按钮,称为“Home键”,额外的还有五个。Home键主要用于关闭使用中的应用程序,导航到主屏幕界面,或是唤醒手机。
iPhone还有额外5个按钮:开关按钮-位于电话的顶部,作为电源按钮,它亦能作为控制来电的控制,当接到来电时,按一次开关按钮可让来电铃声消失,按两次让来电转驳至语言邮箱,长按会显示关机选项,关机后长按会打开手机;
位于机身左侧是静音和音量控制键,iPhone4拥有两个圆形按键来增加或减少音量,静音键能使电话铃声、提示音、推送通知、相机快门等快速转换为静音,这键不会停止闹铃应用程序,在一些国家或地区,例如日本,它不会把相机快门声、语音备忘录音等音效关闭。
iPhone的屏幕有多个感应器;感应器会在用户通话时因手机贴近脸部而暂时关闭屏幕,此举是为了节约用电量,以及减少用户面部或耳部因触碰屏幕而造成的错误 *** 作。
可见光线性光感应器可根据环境亮度而调节屏幕亮度,以此节约电量。三轴动作感应器可根据用户手持iPhone的方向,调整手机画面的方向,并自动调整手机横向画面或纵向画面。
加速度感应器可用于控制第三方应用程序,其主要用于游戏功能。而从iPhone4起,手机内还配备了陀螺感应器,用以加强对用户移动iPhone的感应。
评论列表(0条)