jQuery下拉菜单仅在iPhone上打开一次

时间:2015-08-26 11:05:51

标签: jquery html css iphone mobile

我创建了一个下拉菜单,可以在桌面上和移动设备上完美配合。但是,在我的iPhone上浏览时,下拉菜单只能运行一次(即:打开菜单 - 单击链接 - 菜单关闭)。尝试再次单击菜单图标将不会显示下拉列表。

我相信我错过了有关鼠标悬停/鼠标移动如何在移动设备上运行但却不知道什么是错误的事情!

这是我的jQuery与下拉菜单相关的

$('header nav').mouseover(function () {
            $(this).children().show();

            //When clicking on the menu on the iPhone -> Close menu
            $('header nav li a').on('click touchend', function () {
                $(this).parent().parent().hide();
            });
        });

 $('header nav').mouseout(function () {
            $(this).children().hide();
        });
}

滚动功能

$('header li a, .logo, .down, .subheader .btn, footer .container > a').on('click touchend', function (e) {
    e.preventDefault();
    $('html, body').animate({
        scrollTop: $($(this).attr('href')).offset().top - top_ofset
    }, 1500);
});

修改

添加了“toggle()”而不是hide / show和“click()”而不是鼠标悬停,仍然只在iPhone上运行一次

$('header nav').click(function () {
        $(this).children().toggle();
        $('header nav li a').on('click touchend', function () {
            $(this).parent().parent().toggle();
        });
    });

0 个答案:

没有答案