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

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

6个回答

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

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

/**
* 导航烂单击事件
*/
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 就都失效了,怎么点击都没反应

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

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

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐