JQuery мобильный живой кран - PullRequest
1 голос
/ 07 июня 2011

В мобильных документах jquery (http://jquerymobile.com/demos/1.0a4.1/docs/api/events.html)) сказано, что вы можете использовать tap (или любое из перечисленных событий) с live и bind.

В настоящее время я пытаюсь начать работу с событием tap со следующими данными:

$('#show_date,#final').live('tap', function () {
  //$('#divpd').dialog('open');
  $('#dialog').jqmShow();
  $('#setfoc').focus();
  return false;
}); // does not work

Это, однако, не работает. Однако то же самое, используя bind:

$('#show_date,#final').bind('tap', function () {
  //$('#divpd').dialog('open');
  $('#dialog').jqmShow();
  $('#setfoc').focus();
  return false;
}); // works

Работает.

Это ошибка?

Ответы [ 2 ]

1 голос
/ 30 июня 2011

Если вы работаете с мобильным Safari, то источником вашей проблемы может быть ошибочная реализация jquery live на этой платформе: http://bugs.jquery.com/ticket/5677

Ошибка связана с событием щелчка, но я предполагаю, что на «касание» также может повлиять. Возможный обходной путь - убедиться, что вы привязываетесь к элементу <a>. Крис Уильямс также предлагает другое решение в своем блоге: http://www.martinilab.com/blog/209/mobile-safari-needs-a-little-jquery-live-love/

0 голосов
/ 30 ноября 2011

Это сообщенная ошибка, уникальная для мобильного сафари. Я считаю, что самое простое решение - просто добавить

курсор: указатель

к CSS элемента, на который вы нацеливаете живую функцию.

...