Один из способов реализации прокрутки jquery.carousel и подобных плагинах по свайпу в iphone и ipad

как сделать прокрутку по свайпу iphone ipad

Если вам, как и мне, пришлось столкнуться с вопросом, как же все-таки сделать прокрутку контента в carousel-подобных плагинах по свайпу при просмотре вашего сайта на APPLE-девайсах, есть одно простое решение. Решений на самом деле конечно несколько, но это мне показалось наиболее удобным к реализации. Итак...

Оказывается есть специальный jQuery-плагин, отлавливающий эти самые свайпы. Скачать его можно по этой ссылке . Если при нажатии по ссылке браузер не дает сохранить файл, а открывает его как текст - просто сохраните эту открывшуюся страницу с именем jquery.touchwipe.min.js

Теперь копируем этот файл на свой сайт в папку /catalog/view/javascript/jquery/

После этого нужно подключить наш файл в контроллере модуля карусели:

в файле /catalog/controller/module/carousel.php находим строчку

$this->document->addScript('catalog/view/javascript/jquery/jquery.jcarousel.min.js');

и после нее вставляем

$this->document->addScript('catalog/view/javascript/jquery/jquery.touchwipe.min.js');

ну и наконец в файле темплейта модуля карусели /catalog/view/theme/ВАША_ТЕМА/template/module/carouse.tpl после

$('#carousel<?php echo $module; ?> ul').jcarousel({
    vertical: false,
    visible: <?php echo $limit; ?>,
    scroll: <?php echo $scroll; ?>
});

добавляем

$("#carousel<?php echo $module; ?>").touchwipe({
     wipeLeft: function() { 
        $('#carousel<?php echo $module; ?> ul').jcarousel('next');
     },
     wipeRight: function() { 
        $('#carousel<?php echo $module; ?> ul').jcarousel('prev');
     },
     //wipeUp: function() { alert("up"); },
     //wipeDown: function() { alert("down"); },
     min_move_x: 200,
     min_move_y: 200,
     preventDefaultEvents: true
});

После данных манипуляций проверяем страничку с каруселью на айфоне и радуемся работающим свайпам :)

PS: данная модификация производилась на ocStore 1.5.1.3. На более ранних версиях(1.4.х) работать не будет . На более поздних - проверяйте :)