2015-07-22 5 views
0

Я столкнулся с аналогичными проблемами с touchstart click событиями, запускаемыми дважды. Я решил, добавив preventDefault() и stopPropagation(), как показано ниже:jQuery keyup и входное событие запускалось дважды

$('.upload-area').on('touchstart click', function(e) { 
     e.stopPropagation(); 
     e.preventDefault(); 
     $(this).siblings('.upload-button').trigger('click'); 
    }); 

Однако, я попытался сделать то же самое с keyup input события, но это не похоже на работу. Есть ли решение этой проблемы?

+1

попробовать 'e.stopImmediatePropagation()' –

+0

Может вы можете попробовать связать и отвязать 'нажмите кнопку' событие –

ответ

0

Да, вы можете попробовать .stop() Функция jquery.

Как:

$(this).siblings('.upload-button').stop().trigger('click'); 

Или Другой способ все click и touchstart событие

$('.upload-area').on('touchstart click', function(e) { 
    e.stopPropagation(); 
    e.preventDefault(); 
    $(this).siblings('.upload-button').trigger('click'); 
}).stop(); 
Смежные вопросы