扫码关注官方订阅号
登录 账号: 密码: 登录 忘记密码 立即注册
账号:
密码:
登录
忘记密码
立即注册
当我输入错误的账号和密码的时候,alert("用户名或密码输入错误");会执行两次,而且我用打印的时候,发现整个监听事件都被调用了一次,是什么原因?
业精于勤,荒于嬉;行成于思,毁于随。
用.on()
document.getElementById('BtnLogin').addEventListener('tap',function(){ console.log("ttt"); var username = document.getElementById('inputusername').value; var passw = document.getElementById('inputpassword').value; if(isNaN(username)){ alert("请输入正确的手机号"); }else if(username.length == 11){ if(passw != ''){ console.log(2); /*用户名密码已输入*/ var arr = {}; arr['key'] = "fdrewrdfsdfwerwe"; arr['name'] = username; arr['password'] = passw; var jarr = JSON.stringify(arr); var base_arr = Base64.encode(jarr); $.post("http://hdmd2016.com/index.php?g=Inter&m=Index", { method : "login", params : base_arr }, function(data,status){ console.log(3); var jdata = $.parseJSON(data); var advarr = jdata.data; if(advarr != null){ alert("登录成功"); }else{ alert("用户名或密码输入错误"); } }); }else{ alert("请输入密码~"); } }else{ alert("请输入正确的手机号"); } }); 加两个console.log()就知道运行轨迹了。
先说解决办法:
'tap',function(){ event.stopPropagation(); xxx }
原因: 据说jquery 在绑定touch,click等事件的时候没有问题,但是移动端的click,touch,tap等可能在一次点击的时候,触发了两次 ,这种现象主要存在于移动端
这种现象主要存在于移动端
移动端直接用jquery,会有一些小问题,推荐选用轻量移动端的js框架zepto等。
document.getElementById('BtnLogin').addEventListener('tap',function(){} 你用tap的话,移动端会有点透现象或者双击现象,建议调用fastclick这个库 $(function(){ newFastClick(document.body); })
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
用.on()
先说解决办法:
移动端直接用jquery,会有一些小问题,推荐选用轻量移动端的js框架zepto等。