摆脱双击iPad

时间:2013-03-11 15:27:34

标签: jquery mobile-safari

我所有这一切都设置了我想要它的方式只发现当我使用ipad时我必须触摸链接两次以激活它。

jQuery(document).ready(function () {
    jQuery('.normal-model').live('mouseover', function () {
        jQuery(this).find('.desc-box').fadeIn('slow');
        var videoid = jQuery(this).find('.model-video a').attr('id');
        var viddestin = jQuery(this).find('.model-video');
        var postoi = jQuery(this).find('.model-video iframe');
        if (postoi.length == 0) {
            if (videoid != '' || videoid != ' ') {
                var genifr = '<iframe src="http://www.youtube.com/embed/' + videoid + '?autoplay=1" frameborder="0" width="230" height="150"></iframe>';
            }
            jQuery(genifr).appendTo(viddestin);
        }
    });
    jQuery('.normal-model').live('mouseleave', function () {
        jQuery(this).find('.desc-box').fadeOut('slow');
        jQuery(this).find('.model-video iframe').remove();
    });
});

如何让它只在iPad上点击一次?

2 个答案:

答案 0 :(得分:1)

iPad没有mouseovermouseleave事件。除touchstart事件外,请尝试使用touchendtouch(或仅mouse)(并且还要知道.live已被弃用,而{{3} }}):

jQuery('.normal-model').on('mouseover touch', function () {

// ...

jQuery('.normal-model').on('mouseleave touch', function () {

答案 1 :(得分:1)

您正在将鼠标悬停事件绑定到该元素。由于触摸设备没有常规的悬停事件,因此他们通过确保点击元素时将其视为悬停事件来解决此问题。第二次点击(双击)激活正常点击事件。

Tldr;如果您想在iPad上提供良好的体验,请不要将悬停事件用于此类导航。只需将绑定更改为单击事件即可。