<script>
$('#div a').one('click',function(e){
e.preventDefault();
$(this).find('img')[0].src = "photo.jpg";
setTimeout($.proxy(this.click,this),5000);
});
</script>
У меня есть этот скрипт, который работает на компьютере, но не работает на moblie. photo.jpg появляется, но перенаправление не работает, оно работает только, если я снова нажимаю photo.jpg. Зачем?
Похоже, что вызов this.click
таким образом не вызывает поведение браузера по умолчанию в браузере на мобильном устройстве. Вместо этого вы можете просто изменить местоположение напрямую:
$('#div a').one('click',function(e){
var link = this.href;
e.preventDefault();
$(this).find('img')[0].src = "photo.jpg";
setTimeout(function() {
window.location = link;
},5000);
});