V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ileenhow
V2EX  ›  Angular

用 ionic 开发的微信应用,在二维码图片上面长按,无法弹出“发送给朋友 | 保存到手机 |识别图中二维码”那个菜单

  •  
  •   ileenhow · 2015-08-30 22:17:51 +08:00 · 6866 次点击
    这是一个创建于 3391 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个问题困扰好多天了,上 segmentfault 提问了也没有大神给出解决办法
    http://segmentfault.com/q/1010000003509367
    不知万能的 V2EX 有没有前辈遇到过这个问题

    10 条回复    2015-08-31 18:23:42 +08:00
    babyname
        1
    babyname  
       2015-08-30 22:21:18 +08:00 via iPhone
    公众号发的文章才支持吧
    ileenhow
        2
    ileenhow  
    OP
       2015-08-30 22:22:48 +08:00
    @babyname 不是的吧,只要图片被长按住有反应就能弹出菜单啊,就算不是二维码图片,也能长按保存的呀
    abelyao
        3
    abelyao  
       2015-08-30 22:30:36 +08:00
    遇到过一样的问题。
    我的情况是页面上的内容过于复杂(上千个动态创建的 dom 节点),而在创建这些节点之前长按图片是可以识别二维码的。所以我怀疑微信在识别图片中是否含有二维码之前,是否有判断当前页面占用内存(或者说消耗资源)的使用情况。
    还有另一个可能性,就是图片问题,但是到目前琢磨不明白,可能是跟什么透明度之类的有关( PNG ),仅仅是猜测。
    abelyao
        4
    abelyao  
       2015-08-30 22:31:14 +08:00
    好吧,说了这么多,是我理解错了,原来你是连那个菜单都弹不出…
    ileenhow
        5
    ileenhow  
    OP
       2015-08-30 22:33:20 +08:00
    @abelyao 嗯,一般的页面上面长按不是都能选中文字来复制什么的吗,我的情况就是长按后啥反应都没有,不能选择文字,不能弹出菜单,我猜测是不是 Ionic 或者 angular 把长按的行为给禁用掉了...
    abelyao
        6
    abelyao  
       2015-08-30 22:37:01 +08:00
    @ileenhow 长按事件说白了应该也是 touchstart 或 touchend 事件吧,不涉及 touchmove ,你说的这样有几个可能性,其中一个是页面整体的 touch 事件都被屏蔽了,另一个就是当前元素的 touch 事件。你可以试试确保在 Ionic 或 angular 的代码都执行完之后,把 body / html / element 的 touch 事件都绑定为一个 alert 看看有没有用。
    ljbha007
        7
    ljbha007  
       2015-08-30 22:40:15 +08:00
    @ileenhow
    ionic 会劫持整个 dom 除了标题栏的所有触摸事件 可能微信的触发长按的胶水代码就被覆盖掉了
    ileenhow
        8
    ileenhow  
    OP
       2015-08-31 17:17:35 +08:00
    @abelyao 找到解决办法了,在二维码的 img 上添加一个`data-tap-disabled: true;`属性
    abelyao
        9
    abelyao  
       2015-08-31 17:20:03 +08:00
    @ileenhow 这个属性是 Ionic 的吧?
    ileenhow
        10
    ileenhow  
    OP
       2015-08-31 18:23:42 +08:00
    @abelyao 是的,看官方文档,好像是用来禁用 ionic 的 tap 处理机制
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1001 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:08 · PVG 07:08 · LAX 15:08 · JFK 18:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.