微信小程序入门学习之事件 事件对象 冒泡非冒泡事件(1)
这关于事件的学习,可以自己复制到微信开发者工具上自己运行试试。
首先这里有两个文件.js 和.wxml 文件
首先给出.js文件下代码
// pages/news/news.js
Page({
/**
* 页面的初始数据
*/
data: {
msg: "我是一个msg"
},
//这是一个生命周期函数 页面加载就会触发
onLoad: function (options) {
console.log('生命周期函数 页面加载就会触发');
//在生命周期函数里面调用方法
this.run();
this.requestData('1234567');
},
run() { /*自定义方法*/
console.log('run自定义方法')
}
,
getMsg() {
//获取data里面定义的数据
console.log(this.data.msg);
},
setMsg() {
//改变data里面msg的值
this.setData({
msg: '我是改变后的msg'
})
},
//事件对象
doEventFn(e) {
console.log(e);
//可以获取自定义属性的值
console.log(e.currentTarget.dataset.aid)
//当然既然知道自定义属性的值,可以根据这个属性做一些其他的操作了,暂时我还不会
},
//小程序里面执行方法传值
requestData(aid) {
console.log(aid);
},
//在view视图层执行方法传值
requestViewData(event) {
console.log(event.currentTarget.dataset);
}
, handleTap1() {
console.log('handleTap1')
}
, handleTap2() {
console.log('handleTap2')
}
, handleTap3() {
console.log('handleTap3')
}
})
然后是wxml 文件下代码
<view>
{{msg}}
</view>
<!-- 按钮1 按钮尺寸 按钮属性相对id -->
<button size='mini' bindtap='run'>执行run方法 注意触发方法不需要写()</button>
<view class='br'></view><!-- 换行的作用 -->
<button size='mini' bindtap='getMsg'>获取msg的值</button>
<view class='br'></view>
<button size='mini' bindtap='setMsg'>改变msg的值</button>
<view class='br'></view>
<button size='mini' data-aid='234' bindtap='doEventFn'>事件对象</button>
<view class='br'></view>
<button size='mini' data-aid='xxdefsafwe' data-cid='123' bindtap='requestViewData'>执行方法传值</button>
<!-- 这个是讲冒泡与非冒泡事件,通过点击outer view ,middle view 和innerview 你会发现有不同之处 -->
<!-- 点击inner view 事件会往上递归,先执行handletap3 然后 handletap2 如果handletap2为catchtap则阻止冒泡-->
<view class='br'></view>
<view id="outer" bindtap="handleTap1">
outer view
<view id="middle" catchtap="handleTap2">
middle view
<view id="inner" bindtap="handleTap3">
inner view
</view>
</view>
</view>
运行案例
微信小程序入门学习之事件 事件对象 冒泡非冒泡事件(1)的更多相关文章
- 微信小程序入门学习
前(che)言(dan): 近几天,微信小程序的内测引起了众多开发人员的热议,很多人都认为这将会成为一大热门,那么好吧,虽然我是一个小白,但这是个新玩意,花点时间稍稍钻研一下也是无妨的,谁让我没有女朋 ...
- 微信小程序入门学习-- 简易Demo:计算器
简单学习下微信小程序 官网 简易教程 · 小程序 https://mp.weixin.qq.com/debug/wxadoc/dev/ 需要通过开发者工具,来完成小程序创建和代码编辑. 下载安装,运行 ...
- 我的微信小程序入门踩坑之旅
前言 更好的阅读体验请:我的微信小程序入门踩坑之旅 小程序出来也有一段日子了,刚出来时也留意了一下.不过赶上生病,加上公司里也有别的事,主要是自己犯懒,就一直没做.这星期一,赶紧趁着这股热乎劲,也不是 ...
- 微信小程序入门篇
微信小程序入门篇: 准备工作 IDE搭建 就不多说了,没有内测码去下载个破解版吧,我用了一下,学习完全够了!IDE破解版+安装教程 图片发自简书App 知识准备 JavaScrip还是要看看的,推荐教 ...
- 微信小程序开发学习资料
作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- 从零开始的微信小程序入门教程(一)
之前说要和同事一起开发个微信小程序项目,现在也在界面设计,功能定位等需求上开始实施了.所以在还未正式写项目前,打算在空闲时间学习下小程序.本意是在学习过程中结合实践整理出一个较为入门且不是很厚的教程, ...
- 微信小程序入门-刘志敏-专题视频课程
微信小程序入门-269人已学习 课程介绍 微信小程序入门基础,给入门级程序员好的教程.教程中对小程序的介绍到小程序的基本使用都做了详细的介绍,教程以实用的实现作为案例,如列表下拉刷新.抽 ...
- 天河微信小程序入门《四》:融会贯通,form表单提交数据库
天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...
- 微信小程序入门案例
本文通过具体的实例记录微信小程序的入门知识. 1.特点 不需要安装 依赖微信应用 更接近原生APP 丰富的框架及API可达到快速开发的目的 2.工具使用 在开发的过程中可以使用微信开发者工具,更加直观 ...
随机推荐
- 新建oracle实例
1.安装好ORACLE服务端.2.在开始菜单中,点击ORAHOME目录下的"Configuration and Migration Tools"下的"Database C ...
- python单元测试unittest框架
环境:PyCharm 2016.2 + python 3.5 待测试的类:(Widget.py) 测试类:(Auto.py) 测试结果: 总结:1.第一步:先写好测试类2.第二步:导入unittest ...
- libstagefright 音视频同步方案
1:音视频数据都有一个list,用于存放解码后的数据: List mFilledBuffers; 2:解码后的音视频数据不断的往list中存放,不做音视频同步方面的时间上控制 mFille ...
- react系列(一)JSX语法、组件概念、生命周期介绍
JSX React中,推出了一种新的语法取名为JSX,它给了JS中写HTML标签的能力,不需要加引号.JSX的语法看起来是一种模板,然而它在编译以后,会转成JS语法,只是书写过程中的语法糖. JSX的 ...
- 关于H5 移动端css 文本超出时省略号 失效的问题
之前写代码的时候遇到一个问题,就是用了下面这段css代码来让文字超出范围隐藏并显示省略号. overflow: hidden; text-overflow: ellipsis; display: -w ...
- Struts2-01
一.Struts2的介绍 讲Struts2框架之前,我们需要知道框架是什么呢?估计大多数初学者都只知道其名却不知其意,框架就是一个半成品,别人将一些功能已经写好了,我们只需要拿来用即可,像我们之前使用 ...
- 破损的键盘(悲剧文本)(Broken Keyboard(a.k.a. Beiju Text),Uva 11988)
破损的键盘(悲剧文本)(Broken Keyboard(a.k.a. Beiju Text),Uva 11988) 题意描述 你在输入文章的时候,键盘上的Home键和End键出了问题,会不定时的按下. ...
- windows10上安装mysql
环境:windwos 10(1511) 64bit.mysql 5.7.14 一.下载mysql 1. 在浏览器里打开mysql的官网http://www.mysql.com/ 2. 进入页面顶部的& ...
- Spring MVC 的核心应用-1
使用Spring MVC实现登录.注销 配置文件applicationcontext-jdbc.xml <?xml version="1.0" encoding=" ...
- jQuery 动画效果 与 动画队列
基础效果 .hide([duration ] [,easing ] [,complete ]) 用于隐藏元素,没有参数的时候等同于直接设置 display 属性 $('.target').hide() ...