weixin_38073285
weixin_38073285
采纳率100%
2017-06-03 15:45 阅读 1.9k

html5中 给某一个元素添加加了监听 长按事件,但执行一次后就失效了

如题,该元素上还有单击事件,插件用的mui 单击事件在没点击长按事件钱都是正常的,长按一次后,长按和点击全部失效。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

6条回答 默认 最新

  • 已采纳
    weixin_38073285 weixin_38073285 2017-06-04 02:36

    好吧 我醉了 都成功,没有失效,最终答案是alert()引起的再次tap和longtap失效 图片说明

    点赞 评论 复制链接分享
  • devmiao devmiao 2017-06-03 15:59
  • DOCALLEN JesusAllen30 2017-06-03 16:47

    如果是 jQuery 进行事件监听绑定的话,最好在监听事件绑定之前进行一次解绑,unbind();

    点赞 评论 复制链接分享
  • weixin_38073285 weixin_38073285 2017-06-04 02:20

    /**
    * 导航烂单击事件
    */
    mui.plusReady(function(){

    // 获取所有Webview窗口 \n
    var winAll=plus.webview.all();//获取所有窗体

    //console.log(JSON.stringify(winAll))

    var a1,a2,a3,a4,a5;
    mui("#nav").on("tap","#a1",function(){//点击触发

    if(a2==null) return;
    a2.hide()//这一步必须有

    })

    mui("#nav").on("tap","#a2",function(){//点击触发

    a2 = plus.webview.getWebviewById("a2");
    a2.show()

                })
                mui("#nav").on("tap","#a3",function(){//点击触发  
                    mui.openWindow({
                        url: 'chitchat.html',
                        style:{
                            top:"top"
                        },
                        show:{
                            autoShow:true,
                            aniShow:"pop-in",
                            duration:300
                        },
                        waiting:{
                            autoShow: true, //自动显示等待框,默认为true
                        }
                    });
                })
                mui("#nav").on("tap","#a4",function(){//点击触发  
                    mui.openWindow({
                        url: 'me.html',
                        style:{
                            top:"top"
                        },
                        show:{
                            autoShow:true,
                            aniShow:"pop-in",
                            duration:300
                        },
                        waiting:{
                            autoShow: true, //自动显示等待框,默认为true
                        }
                    });
                })
                mui("#f_header").on("tap","#f_search",function(){//点击触发  
                    mui.openWindow({
                        url: 'search.html',
                        style:{
                            top:"top"
                        },
                        show:{
                            autoShow:true,
                            aniShow:"pop-in",
                            duration:300
                        },
                        waiting:{
                            autoShow: true, //自动显示等待框,默认为true
                        }
                    });
                })
            });
             //长按事件
            document.getElementById("f_search").addEventListener("longtap",function(){
                alert(1);
            })
    
                    这是代码 在longtap之前可以随便tap,但longtap执行一次,longtag和tap 就都失效了,怎么点击都没反应
    
    点赞 评论 复制链接分享
  • weixin_38073285 weixin_38073285 2017-06-04 02:27

    发现 长按之后 再次点击报错 图片说明

    点赞 评论 复制链接分享
  • weixin_38073285 weixin_38073285 2017-06-04 02:31

    好吧 百度了一下 plus 只能在真机模拟上才会有,普通浏览器没有。

    点赞 评论 复制链接分享

相关推荐