javascript - iPad 上的悬停 js 功能不会切换

标签 javascript ipad hover

在桌面上,当鼠标悬停在 div 上时,一些叠加层会向下滑动,OKE。

但是在我的 iPad 上可以触摸,OKE,但是当再次触摸时没有toggle

叠加层 div 在第一次点击后始终可见。

$('.side').hover(
    function(){
        $(this).find('.txt').slideDown(250); //.fadeIn(250)
    },
    function(){
        $(this).find('.txt').slideUp(250); //.fadeOut(250)
    }
); 

我这里有一个例子: http://jsfiddle.net/fourroses666/87011nkx/

知道如何为 ipad - toggle 功能解决这个问题吗?

最佳答案

您需要实现带有触摸事件支持的自定义 hover 功能。在这种情况下看起来像这样就足够了:

$('.side').on({
    'mouseenter mouseleave touchstart': function(e) {
        var $txt = $(this).find('.txt'),
            type = e.type == 'mouseenter' || (e.type == 'touchstart' && !$txt.is(':visible'));
        $txt[type ? 'slideDown' : 'slideUp'](250);
    }
});

关于javascript - iPad 上的悬停 js 功能不会切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27602205/

相关文章:

javascript - 循环数组时如何避免 eval()?

javascript - 从数组中删除重复项的奇怪问题

iphone - 是否可以在任何 iOS 应用程序中创建自动更新功能

python - Tkinter 将鼠标悬停在按钮上 -> 颜色变化

javascript - 通过将鼠标悬停在数组 jquery 上进行迭代

javascript - 从页面加载的所有选择列表中删除包含文本的所有选项

javascript - ng-Class - 多个条件和类

objective-c - iOS 7 - 为什么 CGAffineTransform 在 iOS8 而不是 iOS7 上正常工作?

objective-c - 调试 iPhone 崩溃报告

css - 悬停后保持效果持续的最简单方法是什么