我在手机上遇到JQuery点击事件问题。我搜索了SO以获得答案,并发现了有关在Safari/Chrome等移动浏览器中工作的点击事件的相互矛盾的建议。jQuery在手机上点击事件
下面是我的笔,它是一个更大的项目的片段。这是我为了这篇文章的目的在5分钟内扔在一起的东西。
JS被执行,CSS类在桌面浏览器上切换,但在移动设备上根本不切换。我错过了什么?
http://codepen.io/anon/pen/FknId
谢谢!
HTML
<a href="#" class="btn-navbar-responsive">Menu</a>
<ul class="navbar-menu navbar-hidden">
<li><a href="#">Link 1</a></li>
<li><a href="#">Link 1</a></li>
<li><a href="#">Link 1</a></li>
</ul>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
JS
$(".btn-navbar-responsive").click(function() {
$(".navbar-menu").toggleClass("navbar-hidden navbar-visible");
});
CSS
.btn-navbar-responsive {
padding: 15px 20px;
color: white;
text-decoration: none;
font-size: 16px;
font-family: "Helvetica";
background-color: #50D78B;
}
.navbar-visible {
-webkit-transition: opacity, ease-in, 350ms;
-moz-transition: opacity, ease-in, 350ms;
-ms-transition: opacity, ease-in, 350ms;
transition: opacity, ease-in, 350ms;
-webkit-transition: top, ease-in, 350ms;
-moz-transition: top, ease-in, 350ms;
ms-transition: top, ease-in, 350ms;
transition: top, ease-in, 350ms;
top: 10px;
opacity: 1;
position: relative;
z-index: 999;
}
.navbar-hidden {
-webkit-transition: opacity, ease-in, 350ms;
-moz-transition: opacity, ease-in, 350ms;
-ms-transition: opacity, ease-in, 350ms;
transition: opacity, ease-in, 350ms;
-webkit-transition: top, ease-in, 350ms;
-moz-transition: top, ease-in, 350ms;
-ms-transition: top, ease-in, 350ms;
transition: top, ease-in, 350ms;
top: 0px;
opacity: 0;
position: relative;
z-index: 999;
}
请不要链接到代码,有一个语法功能的原因。 –
我的歉意,现在更新。 –
我gotchu brah,刚刚编辑 –