微信公众号开发ios点击事件失效问题解决方法

在开发公众号的时候遇到了很多坑,其中困扰的最久的就是在ios中onclick事件点击失效的问题,在这里做个笔记,防止日后在犯!!!

点击事件失效的环境:ios

问题描述:

给一个标签绑定(如div,span等等)onclick事件,事件失效。

问题原因:

当使用委托给一个元素添加click事件时,如果的因为事件委托到documentbody上,并且委托的元素是默认不可点击的(如divspan等),此时click事件会失效。

解决方案:

  1. 将 click 事件直接绑定到目标​元素(​​即 .target)上
  2. 将目标​元素换成 <a> 或者 button 等可点击的​元素(因为这两个元素默认添加了cursor: pointer;样式
  3. ​将 click 事件委托到​​​​​非 document 或 body 的​​父级元素上
  4. ​给​目标元素加一条样式规则 cursor: pointer;

 

 然而我还遇到一个更坑的<a>标签跳转问题,点击该链接怎么都跳转不到对应的页面。

<a href="/wx/assess/assessDetailInit.htm"/>

后面在百度上看了很多,发现了问题所在!那就是 ↓↓↓

用事件委托的方法:

//mui A标签跳转委托事件(只要页面用了MUI如果有A,MUI会禁用)
mui('body').on('tap','a',function(){
    document.location.href=this.href;
});
//mui A标签点击委托事件(只要页面用了MUI如果有A,MUI会禁用)
mui('body').on('tap', 'a', function (event) {
    this.click();
});

添加了委托事件后果然可以直接跳转了→ →

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值