iPad Javascript / JQuery TouchStart проблема - PullRequest
2 голосов
/ 10 августа 2011

У меня есть страница на iPad, и я столкнулся с некоторыми проблемами, связанными с аналогичным поведением мыши.

Итак, у меня есть:

  1. На моей странице есть флажок при клике (точнее касании), я хочу показать ошибку MSG
  2. При нажатии / прикосновении к чему-либо, кроме сообщения об ошибке, я хочу скрыть сообщение об ошибке

Ниже приведен код, который я написал;

$(document).bind("touchstart",function(e){
         if(e.target.id != "checkbox_err")
        $("span#checkbox_err").fadeOut("slow");
     });
}


$("input:checkbox").bind("touchstart",function(){
$("span#checkbox_err").fadeIn("fast");

});

Теперь проблема в том, что когда я нажимаю / касаюсь флажка, errorMsg некоторое время отображается, а затем сразу же скрывает его (поскольку target не является errorMsg)

Как мне исправить эту проблему?

Ответы [ 4 ]

1 голос
/ 04 января 2012

Попробуйте этот код js fiddle. Он работает во всех основных браузерах и на всех сенсорных устройствах одновременно.

http://jsfiddle.net/vecny/

1 голос
/ 24 октября 2011

Звучит как призрачный щелчок, прочитайте здесь http://code.google.com/mobile/articles/fast_buttons.html

1 голос
/ 10 августа 2011

Как я знаю, нет необходимости реализовывать сенсорные события для достижения того, что вы хотите. Вы можете использовать обычное событие клика. Будет эмулироваться браузером устройства.

0 голосов
/ 10 августа 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...