安卓手机微信自带浏览器点击事件失效解决
在移动端做了个导航,长这样
原来结构是用的span
<span class="menu_icon"> <img src="img/icon_1.png"> <p>导航</p> </span>
绑定用的是jquery的.click
$('.menu_icon').click(function () { $("#nav-phone").stop().animate({right:"0"},500); }) $('.close').click(function () { $("#nav-phone").stop().animate({right:"-50%"},500); })
然后在移动端,手机自带浏览器都是正常的,但是通过微信自带浏览器打开时,苹果手机是正常的,部分安卓手机出现问题
导航出现失效情况,而且是有时失效,有时不失效
于是各种盲改,网上各种方法都试遍了,最后终于改好了
改了两处地方,不确定是哪一处生效了
1、首先是把span标签换成了a标签,据说是其他标签的点击事件兼容不太好啥的
<a class="menu_icon"> <img src="img/icon_1.png"> <p>导航</p> </a>
2、然后是把.click事件改成了 touchstart和click,毕竟在移动端貌似还是touch事件好一点……
$('.menu_icon').on("click touch",function () { $("#nav-phone").stop().animate({right:"0"},500); }) $('.close').on("click touch",function () { $("#nav-phone").stop().animate({right:"-50%"},500); })