2013-05-25 2 views
0

По какой-то причине я не могу заставить это событие работать на моем iPhone.iOS jquery .on click with library 1.8.3

$(document).on('click', '.ui-state-default', function(e) { 
    if($(this).hasClass('ui-state-default')){ 
     $(".upload").show(); 
    } 
}); 

Он работает с затруднительным, но теперь, когда я загружаю вещи после Dóm нагрузок мне нужно использовать .он

Есть сенсорное событие или что-то, чтобы вызвать сенсорные события.

+0

Попробуйте следующее: '$ (document) .on ('click touchstart', '.ui-state-default', function (e) {' –

+1

Спасибо, что сработал – Blynn

+0

Я разместил его как ответ для ссылки другие пользователи тоже. Не стесняйтесь отмечать его как принятый ответ :) –

ответ

1

Вы можете сделать это:

$(document).on('click touchstart', '.ui-state-default', function(e) { 
    $(".upload").show(); 
}); 

Нет необходимости, чтобы проверить это $(this).hasClass('ui-state-default'), так как ваше событие щелчка будет работать только для элементов, имеющих .ui-state-default, что означает, что this имеет класс с именем ui-state-default уже , Итак, щелкнув по нему, вы можете просто показать элемент .upload.

+0

@Blynn: Nice app. У вас есть 20-й, как у меня. Cheers :) –

+0

В качестве прохода вы должны прекратить распространение в вашем скрипте. Возможно, оба события будут срабатывать в зависимости от характера элемента с этим конкретным классом на нем, и это может вызвать проблему. – kamelkev

0
$(document).on('click touchstart', '.ui-state-default', function(e) { 
    if($(this).hasClass('ui-state-default')){ 
     $(".upload").show(); 
    } 
});