2012-06-01 7 views
0

У меня очень простой указатель мыши на вкладке fadeIn для дочернего div, но я хочу, чтобы сенсорные устройства были можно использовать тесную связь с fadeOut ребенка. Это работает гладко.iOS .click() -> .fadeOut() не разрешается для более позднего mouseenter -> .fadeIn()

Когда пользователь iOS снова забирает вкладку, чтобы перейти в свой ребенок, она исчезает, а затем сразу же исчезает. Попробуйте в третий раз, и он даже не fadeIn.

Как я могу получить каждый щелчок вкладки, чтобы fadeIn, как это было в первый раз?

JQuery

$('#form').on({ 
    mouseenter: function() { 
     clearTimeout($(this).data('timeoutId')); 
     $(this).children('div').fadeIn(300); 
     $('#oops').fadeIn(80); 
    }, 
    mouseleave: function() { 
     var self = this; 
     var timeoutId = setTimeout(function() { 
      $(self).children('div').fadeOut(700); 
       $('#oops').fadeOut(300); 
     }, 700); 
     $(self).data('timeoutId', timeoutId); 
    } 

}); 
$('#closer').click(function(){ 
    $('.hiding').fadeOut(700); 
    $('#oops').fadeOut(400);          
}); 

Вот скрипка: http://jsfiddle.net/natejones/mnWb6/

+0

Вы хотите, чтобы он вел себя точно так же, как наведите курсор? – Huangism

ответ

0

Если вы хотите, чтобы вести себя так же, как парит того

$('#form').live('touchstart', function() { 
    $(this).trigger('mouseenter'); 
}); 
$('#form').live('touchend', function() { 
    $(this).trigger('mouseleave'); 
}); 

Я думаю, что это правильный код , но если нет, это идея. Если вы хотите, чтобы он делал разные вещи, вы можете определить его в touchstart/touchhend. Я думаю, что это относится только к iOS, но я могу ошибаться. Touchstart - это когда ваш палец касается экрана, а коснуться - когда ваш палец покидает экран. Существует также touchmove, когда ваш палец находится на экране и перемещается.

+0

Это определенно приближается. Последующие .tab-краны действительно вызывают деление .hiding div, но оно сразу же исчезло. – natejones

+0

Я удалил прикосновение, и, похоже, он работает. Спасибо! – natejones

+0

Да, это исчезает, потому что, когда палец уходит, он называет мышь (как наведите курсор), так что да, если вы ее выберете, она останется – Huangism