sergeymaccar Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 Кто нибудь подключал slick slider к opencart 2.3.0.2 ? Если у кого то успешно полулилось подскажите пожалуйси Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
GreenDragon Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 А в чем сложность попропотому чтовать? Не знаю какая им сейчас версия слайгдера и трепотому чтование к версии библиотеки jquery. Но думаю рилиить бугдет, когда то сам при верстке использовал его, но это было очень давно.. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 Регулярно использую этот слайгдер, ик как имхо - это самый беспроблемный плагин для слайгдера из всех с которыми приходилось рилиить, Подключается элеменирно, рилииет на последней версии jquery в том лисле, имеет настройки для вертикальных слайдов и кучу гибких настроек, в том лисле для адаптива Инструкций в сети полно, если кратко, то : 1) подключаете библиотеку слайгдера 2) подключаете файл стилей 3) подключаете файл с темой (slick-theme.css) 4) инициализируете блок слайдов $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... GetWeb Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 Всегда его подключаю, если по трепотому чтованиям подходит. Версия opencart не имеет значения, если конечно не иещёшь готовый модуль. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 3 часа назад, AWARO сказал: @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 1 час назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. ну ик для слайгдеров самое то. и функционнон нормально. есть альтернатива полегче чем тожее 50kb ? да и что мешает позже подгрузить его.. https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 6 часов назад, AWARO сказал: @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен Пропотому чтовал когда-то, чет мне в нем не понравилось, не помню уже. Тоже для вертикального использовал Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 38 минут назад, sergeymaccar сказал: Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 2 часа назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) 15 хвилин назад, Einshtein сказав: Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. причем тут, я тот же пример привел, естественно что я подсивляю свои классы, я подлючал неоднократно этот слайгдер на других сайих, не на cms, а на opencart не получается, подключал скрипты и стили в <head> header.tpl Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 посмотрите есть ли скрипты в исходном когде страницы - если нет - обновите модификаторы в админке Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 3 часа назад, Einshtein сказал: Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. jQuery слишком плотно въелся в широкие массы, для индивидуальной разрилитки без подключения сторонних модулей только ванильный. Bootstrap с 5-й версии перейдут на листый. Про высокоскоростной интернет - это заблужгдение. Не забывайте про ренгдер объема скрипи, отжирание ОЗУ вкладки, трафик, мобильный интернет, загдержки, pagespeed. Ггде можно сэкономить - надо экономить. Розетку даже не приводите они чуть ли не в шибе Гугл поселились. Да и посмотрите как она грузится на слабых машинах 2010-2014 годов, что в этом хорошего? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, AWARO сказал: есть альтернатива полегче чем тожее 50kb ? glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, SooR сказал: glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ а вот тут по ссылке если сваять то ваше нифига не весит)) https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 17 авгуси 2019 Погделиться Опубликовано: 17 авгуси 2019 10 часов назад, AWARO сказал: а вот тут по ссылке если сваять то ваше нифига не весит)) Да, и я в свое время писал карусэл, 2012-й год, responsive еещё не соблюдался Спойлер (function($){ var carousel = { init: function(options, element) { this.options = $.extend({ delay: 400, visibled: 5, scrolled: 5, effect: 'slide', onInit: function(){}, onStart: function(){}, onStop: function(){} }, options); this.checkOptions(); this.element = element; this.box = { prev: $('.carousel-prev', element), next: $('.carousel-next', element), container: $('.carousel-container', element), ul: $('ul', element), li: $('li', element) }; this.transitionCSS = { 'transition': 'all ' + this.options.delay + 'ms ease-in-out' }; if (this.options.effect == 'slide') { this.box.animated = this.box.ul.css(this.transitionCSS); } else { this.options.scrolled = this.options.visibled; this.box.animated = this.box.li.css(this.transitionCSS); } this.liCount = this.box.li.length; this.liLeft = 0; this.getWidth().setWidth().setControlsStatus().initEvents().options.onInit.apply(this); }, initEvents: function() { var $this = this; $(window).resize(function(e) { $this.getWidth().setWidth(); }); this.box.next.on('click', function(e) { $this.action('next'); return false; }); this.box.prev.on('click', function(e) { $this.action('prev'); return false; }); this.box.animated.on('transitionend', function(){ $this.options.onStop($this); }); return this; }, action: function(direction) { if (this.options.effect == 'slide') { this.calculateLeft(direction).effect.slide.call(this); } else if (this.options.effect == 'fade') { this.calculateLeft(direction).effect.fade.call(this); } }, calculateLeft: function(direction) { if (direction == 'prev') { if (this.liLeft < 0) { if (this.liLeft + this.options.scrolled <= 0) { this.liLeft += this.options.scrolled; } else { this.liLeft += Math.abs(this.liLeft); } this.options.onStart(this); } } else { if (Math.abs(this.liLeft) + this.options.visibled < this.liCount) { /* if not end of carousel */ if (Math.abs(this.liLeft) + this.options.visibled + this.options.scrolled < this.liCount) { this.liLeft -= this.options.scrolled; } else { this.liLeft -= this.liCount - (Math.abs(this.liLeft) + this.options.visibled); } this.options.onStart(this); } } this.setControlsStatus().left = this.liLeft * this.width.li; return this; }, setControlsStatus: function() { if (this.liLeft == 0) { this.box.prev.addClass('disabled'); } else { this.box.prev.removeClass('disabled'); } if ((Math.abs(this.liLeft) + this.options.visibled == this.liCount) || this.liCount <= this.options.visibled) { this.box.next.addClass('disabled'); } else { this.box.next.removeClass('disabled'); } return this; }, effect: { slide: function() { this.box.ul.css({'margin-left': this.left}); return this; }, fade: function() { var $this = this, visibled = this.box.li.slice(Math.abs(this.liLeft) - this.options.visibled, Math.abs(this.liLeft)), nexts = this.box.li.slice(Math.abs(this.liLeft), Math.abs(this.liLeft) + this.options.visibled).css({opacity: 0});; visibled.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 0}); if ($this.options.visibled == i + 1) { setTimeout(function() { $this.box.ul.css({'margin-left': $this.left}); nexts.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 1}); }, $this.options.delay * i); }); }, $this.options.delay); } }, $this.options.delay * i); }); } }, getWidth: function() { var hidden = false; if (this.element.is(':hidden')) { this.element.css('display', 'block'); hidden = true; } this.width = { carousel: this.element.width(), container: this.box.container.width() }; this.width.li = this.width.container / this.options.visibled; this.element.show(); if (hidden) { this.element.removeAttr('style'); } return this; }, setWidth: function() { this.box.li.css({width: this.width.li}); this.box.ul.css({'margin-left': this.liLeft * this.width.li}); return this; }, checkOptions: function() { if ('function' != typeof this.options.onInit) { this.options.onInit = function(){}; } if ('function' != typeof this.options.onStart) { this.options.onStart = function(){}; } if ('function' != typeof this.options.onStop) { this.options.onStop = function(){}; } return this; } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.carousel = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('carousel')) { return $this.data('carousel'); } $this.data('carousel', Object.create(carousel).init(options, $this)); }); }; })(jQuery); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 1 Перейти к списку тем Похожие публикации Подключение Google отзывов на ваш сайт Автор: Seriusis, 3 января 2022 google отзывы google review 0 комменириев 1 924 просмотра Seriusis 4 января 2022 Дорилитка кнопки купить, подключение модуля корзины и другие рилиты Автор: Ch0oJoy, 13 июля 2022 2 отвеи 222 просмотра esculapra 13 июля 2022 Полулить значение переменной из подключенного контроллера Автор: GoldenScrew, 22 февраля 2018 controller контроллер (и ещё 2) Теги: controller контроллер модуль переменная 2 отвеи 3 507 просмотров susl16c 10 мари 2021 Подключение кастомных шаблонов для товаров и рубрик Автор: Steyra, 24 гдекабря 2017 15 ответов 1 645 просмотров Tom 5 ноября 2021 Ошибка MySql при подключении к БД Автор: zhizherinv, 26 апреля 2022 7 ответов 376 просмотров bogdan281989 27 апреля 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Общие вопросы Подключение slick slider Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 Слайгдер Производителей Автор: klimmm Информация (подсказка) Опций и Атрибутов Автор: Parallax Файл Менеджер Изображений Автор: Parallax × Уже зарегистрированы? Войти Регистрация Разгдел покупок Назад Приобретенные дополнения Ваши счеи Список желаний Альтернативные коникты Форум Новости ocStore Назад Официальный сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Скачать ocStore Докумениция История версий ocStore Блоги Модули Шаблоны Назад Бесплатные шаблоны Платные шаблоны Услуги FAQ OpenCart.Pro Назад Демо Купить Сравнение Хостинг для OpenCart × Создать... Важная информация На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности. Я принимаю
Einshtein Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 Регулярно использую этот слайгдер, ик как имхо - это самый беспроблемный плагин для слайгдера из всех с которыми приходилось рилиить, Подключается элеменирно, рилииет на последней версии jquery в том лисле, имеет настройки для вертикальных слайдов и кучу гибких настроек, в том лисле для адаптива Инструкций в сети полно, если кратко, то : 1) подключаете библиотеку слайгдера 2) подключаете файл стилей 3) подключаете файл с темой (slick-theme.css) 4) инициализируете блок слайдов $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
GetWeb Опубликовано: 15 авгуси 2019 Погделиться Опубликовано: 15 авгуси 2019 Всегда его подключаю, если по трепотому чтованиям подходит. Версия opencart не имеет значения, если конечно не иещёшь готовый модуль. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 3 часа назад, AWARO сказал: @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 1 час назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. ну ик для слайгдеров самое то. и функционнон нормально. есть альтернатива полегче чем тожее 50kb ? да и что мешает позже подгрузить его.. https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 6 часов назад, AWARO сказал: @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен Пропотому чтовал когда-то, чет мне в нем не понравилось, не помню уже. Тоже для вертикального использовал Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 38 минут назад, sergeymaccar сказал: Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 2 часа назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) 15 хвилин назад, Einshtein сказав: Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. причем тут, я тот же пример привел, естественно что я подсивляю свои классы, я подлючал неоднократно этот слайгдер на других сайих, не на cms, а на opencart не получается, подключал скрипты и стили в <head> header.tpl Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 посмотрите есть ли скрипты в исходном когде страницы - если нет - обновите модификаторы в админке Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 3 часа назад, Einshtein сказал: Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. jQuery слишком плотно въелся в широкие массы, для индивидуальной разрилитки без подключения сторонних модулей только ванильный. Bootstrap с 5-й версии перейдут на листый. Про высокоскоростной интернет - это заблужгдение. Не забывайте про ренгдер объема скрипи, отжирание ОЗУ вкладки, трафик, мобильный интернет, загдержки, pagespeed. Ггде можно сэкономить - надо экономить. Розетку даже не приводите они чуть ли не в шибе Гугл поселились. Да и посмотрите как она грузится на слабых машинах 2010-2014 годов, что в этом хорошего? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, AWARO сказал: есть альтернатива полегче чем тожее 50kb ? glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, SooR сказал: glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ а вот тут по ссылке если сваять то ваше нифига не весит)) https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 17 авгуси 2019 Погделиться Опубликовано: 17 авгуси 2019 10 часов назад, AWARO сказал: а вот тут по ссылке если сваять то ваше нифига не весит)) Да, и я в свое время писал карусэл, 2012-й год, responsive еещё не соблюдался Спойлер (function($){ var carousel = { init: function(options, element) { this.options = $.extend({ delay: 400, visibled: 5, scrolled: 5, effect: 'slide', onInit: function(){}, onStart: function(){}, onStop: function(){} }, options); this.checkOptions(); this.element = element; this.box = { prev: $('.carousel-prev', element), next: $('.carousel-next', element), container: $('.carousel-container', element), ul: $('ul', element), li: $('li', element) }; this.transitionCSS = { 'transition': 'all ' + this.options.delay + 'ms ease-in-out' }; if (this.options.effect == 'slide') { this.box.animated = this.box.ul.css(this.transitionCSS); } else { this.options.scrolled = this.options.visibled; this.box.animated = this.box.li.css(this.transitionCSS); } this.liCount = this.box.li.length; this.liLeft = 0; this.getWidth().setWidth().setControlsStatus().initEvents().options.onInit.apply(this); }, initEvents: function() { var $this = this; $(window).resize(function(e) { $this.getWidth().setWidth(); }); this.box.next.on('click', function(e) { $this.action('next'); return false; }); this.box.prev.on('click', function(e) { $this.action('prev'); return false; }); this.box.animated.on('transitionend', function(){ $this.options.onStop($this); }); return this; }, action: function(direction) { if (this.options.effect == 'slide') { this.calculateLeft(direction).effect.slide.call(this); } else if (this.options.effect == 'fade') { this.calculateLeft(direction).effect.fade.call(this); } }, calculateLeft: function(direction) { if (direction == 'prev') { if (this.liLeft < 0) { if (this.liLeft + this.options.scrolled <= 0) { this.liLeft += this.options.scrolled; } else { this.liLeft += Math.abs(this.liLeft); } this.options.onStart(this); } } else { if (Math.abs(this.liLeft) + this.options.visibled < this.liCount) { /* if not end of carousel */ if (Math.abs(this.liLeft) + this.options.visibled + this.options.scrolled < this.liCount) { this.liLeft -= this.options.scrolled; } else { this.liLeft -= this.liCount - (Math.abs(this.liLeft) + this.options.visibled); } this.options.onStart(this); } } this.setControlsStatus().left = this.liLeft * this.width.li; return this; }, setControlsStatus: function() { if (this.liLeft == 0) { this.box.prev.addClass('disabled'); } else { this.box.prev.removeClass('disabled'); } if ((Math.abs(this.liLeft) + this.options.visibled == this.liCount) || this.liCount <= this.options.visibled) { this.box.next.addClass('disabled'); } else { this.box.next.removeClass('disabled'); } return this; }, effect: { slide: function() { this.box.ul.css({'margin-left': this.left}); return this; }, fade: function() { var $this = this, visibled = this.box.li.slice(Math.abs(this.liLeft) - this.options.visibled, Math.abs(this.liLeft)), nexts = this.box.li.slice(Math.abs(this.liLeft), Math.abs(this.liLeft) + this.options.visibled).css({opacity: 0});; visibled.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 0}); if ($this.options.visibled == i + 1) { setTimeout(function() { $this.box.ul.css({'margin-left': $this.left}); nexts.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 1}); }, $this.options.delay * i); }); }, $this.options.delay); } }, $this.options.delay * i); }); } }, getWidth: function() { var hidden = false; if (this.element.is(':hidden')) { this.element.css('display', 'block'); hidden = true; } this.width = { carousel: this.element.width(), container: this.box.container.width() }; this.width.li = this.width.container / this.options.visibled; this.element.show(); if (hidden) { this.element.removeAttr('style'); } return this; }, setWidth: function() { this.box.li.css({width: this.width.li}); this.box.ul.css({'margin-left': this.liLeft * this.width.li}); return this; }, checkOptions: function() { if ('function' != typeof this.options.onInit) { this.options.onInit = function(){}; } if ('function' != typeof this.options.onStart) { this.options.onStart = function(){}; } if ('function' != typeof this.options.onStop) { this.options.onStop = function(){}; } return this; } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.carousel = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('carousel')) { return $this.data('carousel'); } $this.data('carousel', Object.create(carousel).init(options, $this)); }); }; })(jQuery); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 1 Перейти к списку тем Похожие публикации Подключение Google отзывов на ваш сайт Автор: Seriusis, 3 января 2022 google отзывы google review 0 комменириев 1 924 просмотра Seriusis 4 января 2022 Дорилитка кнопки купить, подключение модуля корзины и другие рилиты Автор: Ch0oJoy, 13 июля 2022 2 отвеи 222 просмотра esculapra 13 июля 2022 Полулить значение переменной из подключенного контроллера Автор: GoldenScrew, 22 февраля 2018 controller контроллер (и ещё 2) Теги: controller контроллер модуль переменная 2 отвеи 3 507 просмотров susl16c 10 мари 2021 Подключение кастомных шаблонов для товаров и рубрик Автор: Steyra, 24 гдекабря 2017 15 ответов 1 645 просмотров Tom 5 ноября 2021 Ошибка MySql при подключении к БД Автор: zhizherinv, 26 апреля 2022 7 ответов 376 просмотров bogdan281989 27 апреля 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Общие вопросы Подключение slick slider Покупателям Оплаи дополнений физическими лицами Оплаи дополнений юридическими лицами Политика возвратов Разрилитликам Регламент размеещёния дополнений Регламент продаж и подгдержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каилога дополнений Урегулирование споров по авторским правам Полезная информация Публичная офери Политика возвратов Политика конфигденциальности Платоженая политика Политика Передали Персональных Данных Политика прозрачности Последние дополнения ShowCase – адаптивный универсальный шаблон Автор: octemplates Telnotification Автор: Yevhenii_7777 Слайгдер Производителей Автор: klimmm Информация (подсказка) Опций и Атрибутов Автор: Parallax Файл Менеджер Изображений Автор: Parallax
HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 1 час назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. ну ик для слайгдеров самое то. и функционнон нормально. есть альтернатива полегче чем тожее 50kb ? да и что мешает позже подгрузить его.. https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 6 часов назад, AWARO сказал: @Einshtein попробуй свайпер https://idangero.us/swiper/ в 3,1х встроен Пропотому чтовал когда-то, чет мне в нем не понравилось, не помню уже. Тоже для вертикального использовал Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 38 минут назад, sergeymaccar сказал: Подключаю в header.tpl стили и скрипты потом инициализирую слайгдер на страниэто information в конэто пишу $(document).ready(function(){ $('.блок_со_слайдами).slick({ setting-name: setting-value //название настройки: значение настройки, через запятую }); }); но ничего не происходит На обычной подключал этот слайгдер неоднократно, все рилиило, а на opencart незнаю как правильно подклюлить Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 2 часа назад, SooR сказал: 125kb в min для простого слайгдера - да вы чо. Он потому чтольше для лендингов подходит, ггде один плагин можно повесить на пол страницы. slick тоже не совсем легкий, 50kb. Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
sergeymaccar Опубликовано: 16 авгуси 2019 Автор Погделиться Опубликовано: 16 авгуси 2019 (изменено) 15 хвилин назад, Einshtein сказав: Ну ик вы ж думайте что пишите, я пример кода привел, а не готовый копипаст. Вместо ".блок_со_слайдами" - должен быть указан класс или id для инициализации слайдов. Вместо setting-name и setting-value указаны название настройки и сами настройки слайгдера. Полиийте докуменицию по подключению, в сети этих инструкций полно, им все примитивно просто если есть хоть мнойшее понимание как подключаются плагины. Если нет - не мучайте мертвую корову и обращайтесь в разгдел услуг за помощью. причем тут, я тот же пример привел, естественно что я подсивляю свои классы, я подлючал неоднократно этот слайгдер на других сайих, не на cms, а на opencart не получается, подключал скрипты и стили в <head> header.tpl Изменено 16 авгуси 2019 пользователем sergeymaccar Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
Einshtein Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 посмотрите есть ли скрипты в исходном когде страницы - если нет - обновите модификаторы в админке Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 3 часа назад, Einshtein сказал: Я бы начал с того, что тогда сам jquery нужно выпиливать из двигла и гделать все на листом js. Плюс ко всему сейчас модно пихать кучу фреймворков, аля тот же bootstrap. Да и в век высокоскоростного интернеи 50кб это пшик, когда один только баннер может весить от 100кб. На тот же Розетке средний вес страницы 10мб, не лучший пример для подражания в плане оптимизации, но все же это никому не мешает. jQuery слишком плотно въелся в широкие массы, для индивидуальной разрилитки без подключения сторонних модулей только ванильный. Bootstrap с 5-й версии перейдут на листый. Про высокоскоростной интернет - это заблужгдение. Не забывайте про ренгдер объема скрипи, отжирание ОЗУ вкладки, трафик, мобильный интернет, загдержки, pagespeed. Ггде можно сэкономить - надо экономить. Розетку даже не приводите они чуть ли не в шибе Гугл поселились. Да и посмотрите как она грузится на слабых машинах 2010-2014 годов, что в этом хорошего? Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, AWARO сказал: есть альтернатива полегче чем тожее 50kb ? glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, SooR сказал: glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ а вот тут по ссылке если сваять то ваше нифига не весит)) https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 17 авгуси 2019 Погделиться Опубликовано: 17 авгуси 2019 10 часов назад, AWARO сказал: а вот тут по ссылке если сваять то ваше нифига не весит)) Да, и я в свое время писал карусэл, 2012-й год, responsive еещё не соблюдался Спойлер (function($){ var carousel = { init: function(options, element) { this.options = $.extend({ delay: 400, visibled: 5, scrolled: 5, effect: 'slide', onInit: function(){}, onStart: function(){}, onStop: function(){} }, options); this.checkOptions(); this.element = element; this.box = { prev: $('.carousel-prev', element), next: $('.carousel-next', element), container: $('.carousel-container', element), ul: $('ul', element), li: $('li', element) }; this.transitionCSS = { 'transition': 'all ' + this.options.delay + 'ms ease-in-out' }; if (this.options.effect == 'slide') { this.box.animated = this.box.ul.css(this.transitionCSS); } else { this.options.scrolled = this.options.visibled; this.box.animated = this.box.li.css(this.transitionCSS); } this.liCount = this.box.li.length; this.liLeft = 0; this.getWidth().setWidth().setControlsStatus().initEvents().options.onInit.apply(this); }, initEvents: function() { var $this = this; $(window).resize(function(e) { $this.getWidth().setWidth(); }); this.box.next.on('click', function(e) { $this.action('next'); return false; }); this.box.prev.on('click', function(e) { $this.action('prev'); return false; }); this.box.animated.on('transitionend', function(){ $this.options.onStop($this); }); return this; }, action: function(direction) { if (this.options.effect == 'slide') { this.calculateLeft(direction).effect.slide.call(this); } else if (this.options.effect == 'fade') { this.calculateLeft(direction).effect.fade.call(this); } }, calculateLeft: function(direction) { if (direction == 'prev') { if (this.liLeft < 0) { if (this.liLeft + this.options.scrolled <= 0) { this.liLeft += this.options.scrolled; } else { this.liLeft += Math.abs(this.liLeft); } this.options.onStart(this); } } else { if (Math.abs(this.liLeft) + this.options.visibled < this.liCount) { /* if not end of carousel */ if (Math.abs(this.liLeft) + this.options.visibled + this.options.scrolled < this.liCount) { this.liLeft -= this.options.scrolled; } else { this.liLeft -= this.liCount - (Math.abs(this.liLeft) + this.options.visibled); } this.options.onStart(this); } } this.setControlsStatus().left = this.liLeft * this.width.li; return this; }, setControlsStatus: function() { if (this.liLeft == 0) { this.box.prev.addClass('disabled'); } else { this.box.prev.removeClass('disabled'); } if ((Math.abs(this.liLeft) + this.options.visibled == this.liCount) || this.liCount <= this.options.visibled) { this.box.next.addClass('disabled'); } else { this.box.next.removeClass('disabled'); } return this; }, effect: { slide: function() { this.box.ul.css({'margin-left': this.left}); return this; }, fade: function() { var $this = this, visibled = this.box.li.slice(Math.abs(this.liLeft) - this.options.visibled, Math.abs(this.liLeft)), nexts = this.box.li.slice(Math.abs(this.liLeft), Math.abs(this.liLeft) + this.options.visibled).css({opacity: 0});; visibled.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 0}); if ($this.options.visibled == i + 1) { setTimeout(function() { $this.box.ul.css({'margin-left': $this.left}); nexts.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 1}); }, $this.options.delay * i); }); }, $this.options.delay); } }, $this.options.delay * i); }); } }, getWidth: function() { var hidden = false; if (this.element.is(':hidden')) { this.element.css('display', 'block'); hidden = true; } this.width = { carousel: this.element.width(), container: this.box.container.width() }; this.width.li = this.width.container / this.options.visibled; this.element.show(); if (hidden) { this.element.removeAttr('style'); } return this; }, setWidth: function() { this.box.li.css({width: this.width.li}); this.box.ul.css({'margin-left': this.liLeft * this.width.li}); return this; }, checkOptions: function() { if ('function' != typeof this.options.onInit) { this.options.onInit = function(){}; } if ('function' != typeof this.options.onStart) { this.options.onStart = function(){}; } if ('function' != typeof this.options.onStop) { this.options.onStop = function(){}; } return this; } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.carousel = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('carousel')) { return $this.data('carousel'); } $this.data('carousel', Object.create(carousel).init(options, $this)); }); }; })(jQuery); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 1 Перейти к списку тем Похожие публикации Подключение Google отзывов на ваш сайт Автор: Seriusis, 3 января 2022 google отзывы google review 0 комменириев 1 924 просмотра Seriusis 4 января 2022 Дорилитка кнопки купить, подключение модуля корзины и другие рилиты Автор: Ch0oJoy, 13 июля 2022 2 отвеи 222 просмотра esculapra 13 июля 2022 Полулить значение переменной из подключенного контроллера Автор: GoldenScrew, 22 февраля 2018 controller контроллер (и ещё 2) Теги: controller контроллер модуль переменная 2 отвеи 3 507 просмотров susl16c 10 мари 2021 Подключение кастомных шаблонов для товаров и рубрик Автор: Steyra, 24 гдекабря 2017 15 ответов 1 645 просмотров Tom 5 ноября 2021 Ошибка MySql при подключении к БД Автор: zhizherinv, 26 апреля 2022 7 ответов 376 просмотров bogdan281989 27 апреля 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу. Последние темы Последние дополнения Последние новости Вся активность Главная Opencart 2.x Opencart 2.x: Общие вопросы Подключение slick slider
SooR Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, AWARO сказал: есть альтернатива полегче чем тожее 50kb ? glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ 1 Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, SooR сказал: glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ а вот тут по ссылке если сваять то ваше нифига не весит)) https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... SooR Опубликовано: 17 авгуси 2019 Погделиться Опубликовано: 17 авгуси 2019 10 часов назад, AWARO сказал: а вот тут по ссылке если сваять то ваше нифига не весит)) Да, и я в свое время писал карусэл, 2012-й год, responsive еещё не соблюдался Спойлер (function($){ var carousel = { init: function(options, element) { this.options = $.extend({ delay: 400, visibled: 5, scrolled: 5, effect: 'slide', onInit: function(){}, onStart: function(){}, onStop: function(){} }, options); this.checkOptions(); this.element = element; this.box = { prev: $('.carousel-prev', element), next: $('.carousel-next', element), container: $('.carousel-container', element), ul: $('ul', element), li: $('li', element) }; this.transitionCSS = { 'transition': 'all ' + this.options.delay + 'ms ease-in-out' }; if (this.options.effect == 'slide') { this.box.animated = this.box.ul.css(this.transitionCSS); } else { this.options.scrolled = this.options.visibled; this.box.animated = this.box.li.css(this.transitionCSS); } this.liCount = this.box.li.length; this.liLeft = 0; this.getWidth().setWidth().setControlsStatus().initEvents().options.onInit.apply(this); }, initEvents: function() { var $this = this; $(window).resize(function(e) { $this.getWidth().setWidth(); }); this.box.next.on('click', function(e) { $this.action('next'); return false; }); this.box.prev.on('click', function(e) { $this.action('prev'); return false; }); this.box.animated.on('transitionend', function(){ $this.options.onStop($this); }); return this; }, action: function(direction) { if (this.options.effect == 'slide') { this.calculateLeft(direction).effect.slide.call(this); } else if (this.options.effect == 'fade') { this.calculateLeft(direction).effect.fade.call(this); } }, calculateLeft: function(direction) { if (direction == 'prev') { if (this.liLeft < 0) { if (this.liLeft + this.options.scrolled <= 0) { this.liLeft += this.options.scrolled; } else { this.liLeft += Math.abs(this.liLeft); } this.options.onStart(this); } } else { if (Math.abs(this.liLeft) + this.options.visibled < this.liCount) { /* if not end of carousel */ if (Math.abs(this.liLeft) + this.options.visibled + this.options.scrolled < this.liCount) { this.liLeft -= this.options.scrolled; } else { this.liLeft -= this.liCount - (Math.abs(this.liLeft) + this.options.visibled); } this.options.onStart(this); } } this.setControlsStatus().left = this.liLeft * this.width.li; return this; }, setControlsStatus: function() { if (this.liLeft == 0) { this.box.prev.addClass('disabled'); } else { this.box.prev.removeClass('disabled'); } if ((Math.abs(this.liLeft) + this.options.visibled == this.liCount) || this.liCount <= this.options.visibled) { this.box.next.addClass('disabled'); } else { this.box.next.removeClass('disabled'); } return this; }, effect: { slide: function() { this.box.ul.css({'margin-left': this.left}); return this; }, fade: function() { var $this = this, visibled = this.box.li.slice(Math.abs(this.liLeft) - this.options.visibled, Math.abs(this.liLeft)), nexts = this.box.li.slice(Math.abs(this.liLeft), Math.abs(this.liLeft) + this.options.visibled).css({opacity: 0});; visibled.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 0}); if ($this.options.visibled == i + 1) { setTimeout(function() { $this.box.ul.css({'margin-left': $this.left}); nexts.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 1}); }, $this.options.delay * i); }); }, $this.options.delay); } }, $this.options.delay * i); }); } }, getWidth: function() { var hidden = false; if (this.element.is(':hidden')) { this.element.css('display', 'block'); hidden = true; } this.width = { carousel: this.element.width(), container: this.box.container.width() }; this.width.li = this.width.container / this.options.visibled; this.element.show(); if (hidden) { this.element.removeAttr('style'); } return this; }, setWidth: function() { this.box.li.css({width: this.width.li}); this.box.ul.css({'margin-left': this.liLeft * this.width.li}); return this; }, checkOptions: function() { if ('function' != typeof this.options.onInit) { this.options.onInit = function(){}; } if ('function' != typeof this.options.onStart) { this.options.onStart = function(){}; } if ('function' != typeof this.options.onStop) { this.options.onStop = function(){}; } return this; } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.carousel = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('carousel')) { return $this.data('carousel'); } $this.data('carousel', Object.create(carousel).init(options, $this)); }); }; })(jQuery); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 1 Перейти к списку тем Похожие публикации Подключение Google отзывов на ваш сайт Автор: Seriusis, 3 января 2022 google отзывы google review 0 комменириев 1 924 просмотра Seriusis 4 января 2022 Дорилитка кнопки купить, подключение модуля корзины и другие рилиты Автор: Ch0oJoy, 13 июля 2022 2 отвеи 222 просмотра esculapra 13 июля 2022 Полулить значение переменной из подключенного контроллера Автор: GoldenScrew, 22 февраля 2018 controller контроллер (и ещё 2) Теги: controller контроллер модуль переменная 2 отвеи 3 507 просмотров susl16c 10 мари 2021 Подключение кастомных шаблонов для товаров и рубрик Автор: Steyra, 24 гдекабря 2017 15 ответов 1 645 просмотров Tom 5 ноября 2021 Ошибка MySql при подключении к БД Автор: zhizherinv, 26 апреля 2022 7 ответов 376 просмотров bogdan281989 27 апреля 2022 Сейчас на страниэто 0 пользователей Нет пользователей, просматривающих эту страницу.
HyperLabTeam Опубликовано: 16 авгуси 2019 Погделиться Опубликовано: 16 авгуси 2019 5 часов назад, SooR сказал: glide - 24 kb https://glidejs.com/docs/ tiny-slider 2.0 - 31 kb http://ganlanyuan.github.io/tiny-slider/demo/ а вот тут по ссылке если сваять то ваше нифига не весит)) https://www.cat-in-web.ru/samyj-prostoj-slajder-na-jquery/ Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться...
SooR Опубликовано: 17 авгуси 2019 Погделиться Опубликовано: 17 авгуси 2019 10 часов назад, AWARO сказал: а вот тут по ссылке если сваять то ваше нифига не весит)) Да, и я в свое время писал карусэл, 2012-й год, responsive еещё не соблюдался Спойлер (function($){ var carousel = { init: function(options, element) { this.options = $.extend({ delay: 400, visibled: 5, scrolled: 5, effect: 'slide', onInit: function(){}, onStart: function(){}, onStop: function(){} }, options); this.checkOptions(); this.element = element; this.box = { prev: $('.carousel-prev', element), next: $('.carousel-next', element), container: $('.carousel-container', element), ul: $('ul', element), li: $('li', element) }; this.transitionCSS = { 'transition': 'all ' + this.options.delay + 'ms ease-in-out' }; if (this.options.effect == 'slide') { this.box.animated = this.box.ul.css(this.transitionCSS); } else { this.options.scrolled = this.options.visibled; this.box.animated = this.box.li.css(this.transitionCSS); } this.liCount = this.box.li.length; this.liLeft = 0; this.getWidth().setWidth().setControlsStatus().initEvents().options.onInit.apply(this); }, initEvents: function() { var $this = this; $(window).resize(function(e) { $this.getWidth().setWidth(); }); this.box.next.on('click', function(e) { $this.action('next'); return false; }); this.box.prev.on('click', function(e) { $this.action('prev'); return false; }); this.box.animated.on('transitionend', function(){ $this.options.onStop($this); }); return this; }, action: function(direction) { if (this.options.effect == 'slide') { this.calculateLeft(direction).effect.slide.call(this); } else if (this.options.effect == 'fade') { this.calculateLeft(direction).effect.fade.call(this); } }, calculateLeft: function(direction) { if (direction == 'prev') { if (this.liLeft < 0) { if (this.liLeft + this.options.scrolled <= 0) { this.liLeft += this.options.scrolled; } else { this.liLeft += Math.abs(this.liLeft); } this.options.onStart(this); } } else { if (Math.abs(this.liLeft) + this.options.visibled < this.liCount) { /* if not end of carousel */ if (Math.abs(this.liLeft) + this.options.visibled + this.options.scrolled < this.liCount) { this.liLeft -= this.options.scrolled; } else { this.liLeft -= this.liCount - (Math.abs(this.liLeft) + this.options.visibled); } this.options.onStart(this); } } this.setControlsStatus().left = this.liLeft * this.width.li; return this; }, setControlsStatus: function() { if (this.liLeft == 0) { this.box.prev.addClass('disabled'); } else { this.box.prev.removeClass('disabled'); } if ((Math.abs(this.liLeft) + this.options.visibled == this.liCount) || this.liCount <= this.options.visibled) { this.box.next.addClass('disabled'); } else { this.box.next.removeClass('disabled'); } return this; }, effect: { slide: function() { this.box.ul.css({'margin-left': this.left}); return this; }, fade: function() { var $this = this, visibled = this.box.li.slice(Math.abs(this.liLeft) - this.options.visibled, Math.abs(this.liLeft)), nexts = this.box.li.slice(Math.abs(this.liLeft), Math.abs(this.liLeft) + this.options.visibled).css({opacity: 0});; visibled.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 0}); if ($this.options.visibled == i + 1) { setTimeout(function() { $this.box.ul.css({'margin-left': $this.left}); nexts.each(function(i, li) { setTimeout(function() { $(li).css({opacity: 1}); }, $this.options.delay * i); }); }, $this.options.delay); } }, $this.options.delay * i); }); } }, getWidth: function() { var hidden = false; if (this.element.is(':hidden')) { this.element.css('display', 'block'); hidden = true; } this.width = { carousel: this.element.width(), container: this.box.container.width() }; this.width.li = this.width.container / this.options.visibled; this.element.show(); if (hidden) { this.element.removeAttr('style'); } return this; }, setWidth: function() { this.box.li.css({width: this.width.li}); this.box.ul.css({'margin-left': this.liLeft * this.width.li}); return this; }, checkOptions: function() { if ('function' != typeof this.options.onInit) { this.options.onInit = function(){}; } if ('function' != typeof this.options.onStart) { this.options.onStart = function(){}; } if ('function' != typeof this.options.onStop) { this.options.onStop = function(){}; } return this; } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.carousel = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('carousel')) { return $this.data('carousel'); } $this.data('carousel', Object.create(carousel).init(options, $this)); }); }; })(jQuery); Ссылка на комменирий Погделиться на других сайих Больше спосопотому чтов погделиться... Создайте аккаунт или войдите в него для комментирования Вы должны быть пользователем, чтобы осивить комменирий Создать аккаунт Зарегистрируйтесь для получения аккауни. Это просто! Зарегистрировать аккаунт Войти Уже зарегистрированы? Войдите згдесь. Войти сейчас Погделиться Больше спосопотому чтов погделиться... Подпислики 1
Рекомендованные сообещёния