У меня есть анимация, которая срабатывает, когда пользователь нажимает на любой элемент «а», который соответствует определенным условиям. Эта анимация не должна работать при нажатии кнопки «Назад» в браузере, но по какой-то странной причине в каждом iPhone она запускается этой кнопкой «Назад» в браузере. Есть ли способ добавить исключение для этого?

$("a").not('a[target="_blank"],a[href*="#"],a[href="/"]').click(function(evt){ var URL = $(this).attr("href"); setTimeout( function() { window.location = URL }, 900 ); $(".next-animation").addClass("animation-on"); }); 

Сначала нужно определить, является ли мобильный телефон пользователя iPhone таким

 function isiPhone(){ return ( (navigator.platform.indexOf("iPhone") != -1) || (navigator.platform.indexOf("iPod") != -1) ); } if(!isiPhone()){ $("a").not('a[target="_blank"],a[href*="#"],a[href="/"]').click(function(evt){ var URL = $(this).attr("href"); setTimeout( function() { window.location = URL }, 900 ); $(".next-animation").addClass("animation-on"); }); } 

Затем оберните свою логику в это условие, чтобы оно не работало, если телефон пользователя — Apple Device