1

我有以下脚本,使导航中的下拉菜单在单击时出现和消失。

我正在创建它,以便用户在使用 ipad 时可以在我的导航中看到下拉菜单。

该脚本适用于我桌面上的所有浏览器,但是当我在 Ipad 上尝试时,下拉菜单不显示。

知道为什么这不起作用吗?

$("li.dropdown-control > a").click( function (event) {
    event.preventDefault()
    var nextSibling = $(this).next();
    nextSibling.toggleClass("dropped");  
    $('.dropped').not(nextSibling).removeClass('dropped');  
});
4

2 回答 2

1

问题是,iPad 点击事件不会像在桌面上那样触发。

您将希望观看以下任何事件:

  • 触摸启动
  • 触摸移动
  • 触摸端
  • 触摸屏

使用此代码:

$('body').on('click touchstart','li.dropdown-control > a',function(event){
    event.preventDefault()
    var nextSibling = $(this).next();
    nextSibling.toggleClass("dropped");  
    $('.dropped').not(nextSibling).removeClass('dropped'); 
 });

这适用于台式机和平板电脑。

于 2013-01-29T14:53:41.673 回答
0

以前有同样的问题,但我找到了解决方法。

尝试这个:

$(document).ready(function(){

$('#clickme').click(function() {
$('#me').slideToggle(function() {
$('.showhide').text(
  $(this).is(':visible') ? "Close" : "Open"
 );
 });
});

然后只需编辑它以满足您的需要:) 希望它有所帮助!

于 2013-01-29T14:52:07.263 回答