HTML5自定义属性的问题分析


Posted in HTML / CSS onAugust 16, 2019

问题背景

在页面与js传值中我们经常用到data-id="1"的方式,然后通过e.target.dataset.id取id的值

今天在获取值时怎么也取不到

问题分析

后来发现e对象有currentTarget和target属性,而dataset就在currentTarget中,所以通过e.currentTarget.dataset.id取到了正确的值。

另外data-id="1"最好不要用驼峰命名如:data-Id="1" ,这样有时候也取不到值。

HTML5 自定义属性

网站中经常会看到以data-开头的属性定义,虽然W3C不认定,但最新HTML5规定data-是合理的,在HTML5中,任何以data-开始的都是自定义属性,通常它用来实现一些HTML里没有明确定义的元素,把用户自定义的属性应用到代码中

微信小程序文档

什么是事件

事件是视图层到逻辑层的通讯方式。

事件可以将用户的行为反馈到逻辑层进行处理。

事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数。

事件对象可以携带额外信息,如 id, dataset, touches。

事件的使用方式

在组件中绑定一个事件处理函数。

如bindtap,当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数。

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

在相应的Page定义中写上相应的事件处理函数,参数是event。

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

可以看到log出来的信息大致如下:

{
  "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
  }]
}

使用WXS函数响应事件

总结

以上所述是小编给大家介绍的HTML5自定义属性的问题分析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

HTML / CSS 相关文章推荐
目前不被任何主流浏览器支持的CSS3属性汇总
Jul 21 HTML / CSS
CSS3动画效果回调处理详解
Dec 10 HTML / CSS
HTML5地理定位与第三方工具百度地图的应用
Nov 17 HTML / CSS
深入剖析webstorage[html5的本地数据处理]
Jul 11 HTML / CSS
css 如何让背景图片拉伸填充避免重复显示
Jul 11 HTML / CSS
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
May 15 HTML / CSS
HTML5 History API 实现无刷新跳转
Jan 11 HTML / CSS
HTML5 3D衣服摇摆动画特效
Mar 17 HTML / CSS
浅析border-radius如何兼容IE
Apr 19 HTML / CSS
HTML5自定义属性的问题分析
Aug 16 HTML / CSS
css 中多种边框的实现小窍门
Apr 07 HTML / CSS
CSS浮动引起的高度塌陷问题
Aug 05 HTML / CSS
HTML5实现视频弹幕功能
Aug 09 #HTML / CSS
Canvas高级路径操作之拖拽对象的实现
Aug 05 #HTML / CSS
Canvas多边形绘制的实现方法
Aug 05 #HTML / CSS
使用canvas压缩图片大小的方法示例
Aug 02 #HTML / CSS
HTML5实现移动端弹幕动画效果
Aug 01 #HTML / CSS
前端实现背景虚化但内容清晰且自适应 的实例代码
Aug 01 #HTML / CSS
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
Aug 01 #HTML / CSS
You might like
PHP提取中文首字母
2008/04/09 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
jquery 屏蔽一个区域内的所有元素,禁止输入
2009/10/22 Javascript
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
用svg制作富有动态的tooltip
2015/07/17 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
完美实现js选项卡切换效果(一)
2017/03/08 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
2018/08/07 Javascript
vue 查看dist文件里的结构(多种方式)
2020/01/17 Javascript
js瀑布流布局的实现
2020/06/28 Javascript
在vue中使用image-webpack-loader实例
2020/11/12 Javascript
Javascript 模拟mvc实现点餐程序案例详解
2020/12/24 Javascript
JavaScript点击按钮生成4位随机验证码
2021/01/28 Javascript
[01:03:27]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
python中urlparse模块介绍与使用示例
2017/11/19 Python
Python自定义一个异常类的方法
2019/06/27 Python
python 申请内存空间,用于创建多维数组的实例
2019/12/02 Python
Python使用ElementTree美化XML格式的操作
2020/03/06 Python
CSS3中的Media Queries学习笔记
2016/05/23 HTML / CSS
css3旋转木马_动力节点Java学院整理
2017/07/12 HTML / CSS
CSS3中animation实现流光按钮效果
2020/12/21 HTML / CSS
倩碧香港官方网站:Clinique香港
2017/11/13 全球购物
Paul’s Boutique官网:英国时尚手袋品牌
2018/03/31 全球购物
美国女士时尚珠宝及配饰购物网站:Icing
2018/07/02 全球购物
德国排名第一的主题公园门票网站:Attraction Tickets Direct
2019/09/09 全球购物
建筑专业自我鉴定
2013/10/22 职场文书
实习生个人找工作的自我评价
2013/10/30 职场文书
2014学年自我鉴定
2014/02/23 职场文书
法定代表人授权委托书
2014/04/04 职场文书
初三开学计划书
2014/04/27 职场文书
学习型党组织心得体会
2014/09/12 职场文书
逃课检讨书范文
2015/05/06 职场文书
苦儿流浪记读书笔记
2015/07/01 职场文书
预备党员入党感言
2015/08/01 职场文书