在移动端做了个导航,长这样

原来结构是用的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 touchstart",function () {
$("#nav-phone").stop().animate({right:"0"},500);
})
$('.close').click(function () {
$("#nav-phone").stop().animate({right:"-50%"},500);
})
来源:https://www.cnblogs.com/chenyingying0/p/12305783.html