JQuery предотвращать по умолчанию только при первом касании

Я надеюсь узнать способ кодировать следующее только для касания, используя jquery?

$(".portfolio a").one("click", false);

Этот код для hover событие по ссылке в визуальном меню. Я хотел бы предотвратить переход по ссылке при первом касании, чтобы при первом касании происходило событие наведения, а второе касание приводит вас к ссылке.

Класс Hover привязан к Href...

3 ответа

Просто проверьте сенсорное поведение, прежде чем отсоединять ссылку:

if ("ontouchstart" in document.documentElement) {
   $(".portfolio a").one("click", false, function(e){
     e.preventDefault();
   }
}

или наоборот

$(".portfolio a").one("click", false, function(e){
   if ("ontouchstart" in document.documentElement) {
     e.preventDefault();
   }
}

Было бы более естественно добавить .hover класс, а не с помощью :hover псевдо-селектор. Это позволит вам сделать следующее:

$(".portfolio a").one("click", function(e) {
    e.preventDefault();
    $(this).addClass('hover');
});

Следующий щелчок будет вести себя как обычно.

$(".portfolio a").one("click", false, function(event){

event.preventDefault();

};);

Попробуй это

Другие вопросы по тегам