V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
m939594960
V2EX  ›  问与答

js onclick 在部分 ios 版本上 click 不生效

  •  
  •   m939594960 · 2017-07-29 21:17:38 +08:00 · 2211 次点击
    这是一个创建于 2673 天前的主题,其中的信息可能已经有所发展或是发生改变。

    js onclick 在部分 ios 版本上 click 不生效

    安卓一切正常 chrome 一切正常

    IOS 版本 10.2.1 10.1.1

    iphone 版本 iphone 6s

    查了很多资料 试了很多办法

    1.添加 css

    cursor: pointer;
    position:relative;
    z-index:999;
    

    失败

    2.修改元素 span 为 button 失败

    3.父元素监视 click 判断是否本元素 失败

    4.去掉元素浮动属性 失败

    5.监视 click 事件改为 touchstart 失败

    6.添加 fastclick 库

    由于是个人项目 没有 iphone 能测试,只能改一个版本让朋友帮我点一下,就来问论坛的朋友们有没有遇到过这种问题?应该怎么解决?谢谢大家。

    第 1 条附言  ·  2017-07-30 12:28:24 +08:00
    解决了,把 swiper.js 换成了 2.X 就好了,也不知道是什么原因,准备有时间分析一下源码
    5 条回复    2017-07-30 09:26:52 +08:00
    zhlssg
        1
    zhlssg  
       2017-07-29 21:18:51 +08:00
    价格 css 属性 cursor: pointer;
    m939594960
        2
    m939594960  
    OP
       2017-07-29 21:20:44 +08:00
    @zhlssg #1 在上面写了 第一次就是尝试的这种方法,并不姓
    mchl
        3
    mchl  
       2017-07-29 21:22:42 +08:00 via Android
    改成原生 js 试一试,element.addEventListener('click', callback)
    l9rw
        4
    l9rw  
       2017-07-30 01:05:12 +08:00
    好像是 safari 的 click 事件有问题,之前试过改成 touchend 解决了
    hanzichi
        5
    hanzichi  
       2017-07-30 09:26:52 +08:00
    绑定在了 body 上嘛?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2549 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:44 · PVG 09:44 · LAX 17:44 · JFK 20:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.