Новости Joomla

Вышел WT Quick links v.2.4.0 - релиз модуля для Joomla

Вышел WT Quick links v.2.4.0 - релиз модуля для Joomla.Это модуль-конструктор для быстрого создания набора элементов. Это могут быть ссылки на компоненты Joomla, пункт меню или пользовательская ссылка. Есть условия для исключений показа элементов списка. Вы можете создавать собственные макеты вывода модуля, создавая таким образом почти всё, что угодно: от простого списка ссылок до стены фотографий на главную страницу или ссылки-теги для перелинковки категорий интернет-магазина, список FAQ, табы или аккордеоны. Модуль позволяет выводить изображения, адаптивные изображения, видео, адаптивные видео.v.2.4.0. Что нового?Добавлена поддержка новых компонентов. Добавлены новые типы ссылок и исключений для них: - Phoca Download, - Phoca Gallery, - RadicalMart (@radicalmart).Joomla 6. Успешно протестирована работа модуля на Joomla 6-alpha2.РазработчикамПроведён большой рефакторинг кода. Для типов ссылок созданы классы-драйверы. Теперь для того, чтобы добавить новый тип ссылки в модуль достаточно скопировать класс-образец из
modules/mod_wt_quick_links/src/Driver/Collection и наполнить его данными по образцу, а так же добавить необходимые языковые константы в панели администратора Joomla.Модуль бесплатный. Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 Подпишись на @joomlafeed.#joomla #разработка

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много

👩‍💻 Свои типы полей в Joomla.Это большая тема, о которой можно говорить очень много. Самое главное, что возможности применения ограничиваются только вашей больной фантазией. Вы строите интерфейс своего модуля или плагина и вам нужно подтянуть данные из сторонней системы (список чего-нибудь по какому-нибудь API), чтобы сохранить выбранный id в Joomla. Или сделать какую-то проверку и в зависимости от неё показать то или иное сообщение пользователю. Для этого подойдут свои пользовательские типы полей. Интерфейс Joomla по большей части описан в XML-файлах. У каждого из них свои параметры. Некоторые не описаны в документации (manual.joomla.org), поэтому самым любопытным будет полезно заглянуть в собственно файлы фреймворка по пути

libraries/src/Form/FormField.php, а так же в
libraries/src/Form/Fields. У каждого класса поля перечислены его специфические свойства, которые можно описывать в XML. А в своём типе поля вы можете устанавливать эти значения программно. В моём модуле WT Quick links под капотом происходят изменения. Теперь для работы (в админке) ему нужен вспомогательный плагин. А в самом модуле нам бы проверить, а не выключен ли он? В Joomla есть тип поля Note - заметка. Его можно использовать для вывода примечаний.

<field type="note"     name="your_note_for_user"     label="Заголовок примечания"     title="Альтернативный способ для заголовка"     description="Текст примечания"     class="col-12 alert alert-info"     heading="h1"     close="true"/>
heading - указывать уровень заголовка.
close - позволяет закрыть это примечание. В классе поля
libraries/src/Form/Field/NoteField.php описана логика вывода. И в принципе оно нам подходит для нашей задачи. Но оно будет выводить сообщение всегда, а нам нужно только тогда, когда плагин отключён.Поэтому берём и создаём свой класс поля, который мы унаследуем от
NoteField. Это значит, что у нас в руках будет весь инструментарий стандартного поля
Note + то, что мы сами добавим. В XML-манифест добавляем наше поле
<field type="systempluginstatus"      name="systempluginstatus"     addfieldprefix="Joomla\Module\Wtquicklinks\Site\Fields"/>
-
type - имя файла и класса,-
addfieldprefix - указываем namespace к нашему классу, может быть любой нам нужный-
name - нельзя полю без имени...Это означает, что Joomla будет использовать класс поля из файла
modules/mod_wt_quick_links/src/Fields/SystempluginstatusField.php.А в классе поля будет написано следующее:
<?php// namespace для атрибута addfieldprefixnamespace Joomla\Module\Wtquicklinks\Site\Fields;// нельзя напрямую обращаться к этому файлуdefined('_JEXEC') or die;// подключаем родительский класс для переопределенияuse Joomla\CMS\Form\Field\NoteField;use Joomla\CMS\Language\Text;use Joomla\CMS\Plugin\PluginHelper;// имя класса и имя файла точь-в-точьclass SystempluginstatusField extends NoteField{     protected $type = 'Systempluginstatus';     protected function getLabel()          {               // если плагин не включён               if(PluginHelper::isEnabled('system','wtquicklinks')) {                    // меняем свойства родительского класса                    $this->class = 'alert alert-danger w-100';                    $this->element['label'] = '⚠️ А-а-а-а!';                    $this->element['description'] = 'Плагин не включён!!';                    // и просто рендерим его с нашими свойствами                    return parent::getLabel();               }          // А иначе всё хорошо, скрываем поле из виду.          $this->parentclass = 'd-none';          return '';     }}
Просто и удобно. И людям приятно, что о них позаботились и рассказали почему что-то не работает.@webtolkru#joomla #php #webdev #разработка

Обновлена информация в Плане развития Joomla

👩‍💻 Обновлена информация в Плане развития Joomla.Здесь собрана информация о датах релизов, описаны принципы версионирования, указаны ответственные за релизы, а так же даты окончания поддержки релизов. Опираясь на эту информацию вы можете планировать развитие ваших интернет-проектов.👩‍💻 Что нового?⛔️ Joomla 4.Дата окончания исправления ошибок безопасности в версии 4.x - 14 октября 2025г. ⚠️ После этой даты Joomla 4 прекратит получать какие-либо обновления, в том числе безопасности - вообще. Рекомендуем обновить ваши сайты до актуальной Joomla 5.✅ Joomla 5.- Дата окончания исправления ошибок в версии 5.x - 13 октября 2026г.- Дата окончания исправления ошибок безопасности в версии 5.x - 12 октября 2027 года.- Текущая актуальная (на момент написания заметки) версия - 5.3.1.- Опубликовано расписание выхода релизов Joomla 5.4. Стабильный релиз ожидается 14 октября 2025 года.✅ Joomla 6.- Дата окончания исправления ошибок в версии 6.x - 17 октября 2028г.- Дата окончания исправления ошибок безопасности в версии 6.x - 16 октября 2029г.- Опубликовано расписание выхода релизов Joomla 6.0. Стабильный релиз ожидается 14 октября 2025 года.- Для разработчиков уже доступна Joomla 6.0.0-alpha1.✅ Joomla! Framework.Обновлена информация о Joomla! Framework - полноценном PHP-фреймворке для разработки. Он в версиях 1.х и 2.х был самостоятельным параллельным проектом, однако начиная с версии Joomla 4.0 стал её основой. Добавлена информация о Joomla! Framework 3.x, который вышел 6 октября 2023 года. Его можно использовать в тех случаях, когда вам в проекте не нужна CMS Joomla целиком.Подробнее на сайте Joomla-сообщества Joomlaportal.ru#joomla #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 22 Ответов
  • 6952 Просмотров
*

Nikolay Blinov

  • Захожу иногда
  • 142
  • 5 / 0
  • How much is the fish?
DJ-Image Slider. Как зациклить?
« : 30.09.2013, 10:49:45 »
DJ-ImageSlider версия 2.2.2, Joomla 2.5.14

Слайдер состоит из 6 слайдов, и не переходит с последнего слайда на первый, а перематывает назад через все-все слайды.
Как зациклить предыдущие версии, я понял: нужно изменить slider.js
Нашел как зациклить его в направлении ВПЕРЕД!
По аналогии помогите пожалуйста сделать так для "Назад"
В файле slider.js 185 строка, меняем функцию function nextSlide(){ на:
   function nextSlide(){
         if (settings.slider_type == 2)
            nextFade();
         else {
            if (current_slide < max_slides){
            current_slide++;
         }else{
            current_slide = 0;
         }
         if(current_slide > 0){
         var elements = $(slider).getElements('li');
         var slide_size_new = document.getElementById(slider).clientWidth;
         elements[(current_slide-1)].clone().injectInside($(slider));
         max_slides++;
         loaded_images++;
         document.getElementById(slider).setStyle('width', (slide_size_new+470));
         }
         slideImages.start(-settings.slide_size * current_slide);
         updateActiveButton(current_slide);
         }
        }

Но, блин, в текущей версии в этом файле вот такая хрень:
Код

eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(6($){1D.1Z=S 20({21:6(j,k){7 l=0;7 m=0;7 n=0;7 o=0;7 p=\'1E\'+j.3;7 q=k.22;7 r=0;7 s=0;7 t=1F;$(\'8\'+j.3).1b(\'1G\');7 u=$(\'1E\'+j.3).23(\'24\');4(1H.1I){7 v=S 25();26(7 i=0;i<j.1c;i++){v[i]=u[i];v[i].1b(\'1G\')}}u.1d(6(){l+=j.G;m++});n=m-j.1c;$(p).5(\'1J\',\'27\');7 w;4(j.17==2){u.5(\'1J\',\'28\');u.5(\'Y\',0);u.5(\'N\',0);$(p).5(\'O\',j.G);u.5(\'C\',0);u.5(\'1e\',\'1K\');u[0].5(\'C\',1);u[0].5(\'1e\',\'1L\');u.H(\'1p\',{T:\'C\',K:k.K})}9 4(j.17==1){$(p).5(\'Y\',0);$(p).5(\'Z\',l);w=S 10.11(p,{T:\'Y\',K:k.K,1f:k.1f,12:\'13\'})}9{$(p).5(\'N\',0);$(p).5(\'O\',l);w=S 10.11(p,{T:\'N\',K:k.K,1f:k.1f,12:\'13\'})}4(j.D==1){7 x=S 10.11(\'I\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0);7 y=S 10.11(\'P\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0)}4(j.14==1){7 z=S 10.11(\'1q\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0);7 A=S 10.11(\'1r\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0)}4(j.14){$(\'1q\'+j.3).U(\'18\',6(){4(j.D==1)1h();1i()});$(\'1r\'+j.3).U(\'18\',6(){4(j.D==1)1h();1s()})}4(j.D){$(\'I\'+j.3).U(\'18\',6(){1t();q=1});$(\'P\'+j.3).U(\'18\',6(){1t();q=0})}$(\'8-L\'+j.3).29({\'2a\':6(){4(j.D==1)1M();4(j.14==1){z.J(1);A.J(1)}r=1},\'2b\':6(){4(j.D==1)1h();4(j.14==1){z.J(0);A.J(0)}r=0},\'1N\':6(a){4(a.1O==\'N\'){1i()}9 4(a.1O==\'19\'){1s()}}});$(\'8-L\'+j.3).2c(\'1N:2d\',1P);4($(\'1u-Q\'+j.3)){7 B=$(\'1u-Q\'+j.3).2e(\'.1a-1j\');B.1d(6(a,b){a.U(\'18\',6(e){4(!t&&!a.2f(\'1a-1j-1v\')){15(b)}})})}6 F(a){1k a.2g(6(){1k 1D.F()})}6 1w(){7 a=$(\'8-L\'+j.3).2h();7 b=F(a).x;b-=a.V(\'E-N\').W();b-=a.V(\'E-19\').W();7 c=$(\'8\'+j.3).V(\'1l-O\').W();7 d=F($(\'8\'+j.3));7 e=d.x;4(e>b){e=b}9 4(e<=b&&e<c){e=(b>c?c:b)}7 f=d.x/d.y;7 g=e/f;$(\'8\'+j.3).5(\'O\',e);$(\'8\'+j.3).5(\'Z\',g);4(j.17==2){$(p).5(\'O\',e);u.5(\'O\',e);u.5(\'Z\',g)}9 4(j.17==1){7 h=u[0].V(\'E-1m\').W();j.G=(g+h)/j.1c;l=m*j.G+m;$(p).5(\'Z\',l);u.5(\'O\',e);u.5(\'Z\',j.G-h);w.H(-j.G*o)}9{7 h=u[0].V(\'E-19\').W();j.G=(e+h)/j.1c;l=m*j.G+m;$(p).5(\'O\',l);u.5(\'O\',j.G-h);u.5(\'Z\',g);w.H(-j.G*o)}4(j.D||j.14){1n=$(\'Q\'+j.3).2i(\'8\'+j.3).y;4(1n<0){$(\'8-L\'+j.3).5(\'E-Y\',-1n);$(\'8-L\'+j.3).5(\'E-1m\',0)}9{R=0;4(j.14){R=F($(\'1q\'+j.3)).y;R=1x.1l(R,F($(\'1r\'+j.3)).y)}4(j.D){R=1x.1l(R,F($(\'I\'+j.3)).y);R=1x.1l(R,F($(\'P\'+j.3)).y)}E=1n+R-g;4(E>0){$(\'8-L\'+j.3).5(\'E-Y\',0);$(\'8-L\'+j.3).5(\'E-1m\',E)}9{$(\'8-L\'+j.3).5(\'E-Y\',0);$(\'8-L\'+j.3).5(\'E-1m\',0)}}1y=$(\'Q\'+j.3).V(\'16-N\').W()+$(\'Q\'+j.3).V(\'16-19\').W();4(1y<0&&1z.F().x<F($(\'Q\'+j.3)).x-1y){$(\'Q\'+j.3).5(\'16-N\',0);$(\'Q\'+j.3).5(\'16-19\',0)}}}6 1Q(c){4($(\'1u-Q\'+j.3))B.1d(6(a,b){a.2j(\'1a-1j-1v\');4(b==c)a.2k(\'1a-1j-1v\')})}6 1i(){4(o<n)15(o+1);9 15(0)}6 1s(){4(o>0)15(o-1);9 15(n)}6 15(a){4(o==a)1k;4(j.17==2){4(t)1k;t=1P;1R=o;o=a;1S(1R)}9{o=a;w.J(-j.G*o)}1Q(o)}6 1S(a){u[o].5(\'1e\',\'1L\');u[o].1T(\'1p\').J(1);u[a].1T(\'1p\').J(0).1A(6(){u[a].5(\'1e\',\'1K\');t=1F})}6 1h(){4(!q){x.J(r,0).1A(6(){4(!s)$(\'I\'+j.3).5(\'M\',\'X\')})}9{y.J(r,0).1A(6(){4(!s)$(\'P\'+j.3).5(\'M\',\'X\')})}s=0}6 1M(){4(!q){$(\'I\'+j.3).5(\'M\',\'1o\');x.J(r,1)}9{$(\'P\'+j.3).5(\'M\',\'1o\');y.J(r,1)}s=1}6 1t(){4(q){$(\'P\'+j.3).5(\'M\',\'X\');4(j.D==1)y.H(\'C\',0);$(\'I\'+j.3).5(\'M\',\'1o\');4(j.D==1)x.H(\'C\',1)}9{$(\'I\'+j.3).5(\'M\',\'X\');4(j.D==1)x.H(\'C\',0);$(\'P\'+j.3).5(\'M\',\'1o\');4(j.D==1)y.H(\'C\',1)}}6 1B(){2l(6(){4(q&&!r)1i();1B()},k.1U)}6 1C(){$(\'8-L\'+j.3).5(\'2m\',\'X\');$(\'8\'+j.3).1b(\'1V\');4(1H.1I){v.1d(6(a){4(a)a.1b(\'1V\')})}1w();4(j.D){1W=F($(\'I\'+j.3)).x;$(\'I\'+j.3).5(\'16-N\',-1W/2);1X=F($(\'I\'+j.3)).x;$(\'P\'+j.3).5(\'16-N\',-1X/2);4(q){$(\'I\'+j.3).5(\'M\',\'X\')}9{$(\'P\'+j.3).5(\'M\',\'X\')}}1B()}4(j.1Y)1C.1U(j.1Y);9 1z.U(\'1a\',1C);1z.U(\'2n\',1w)}})})(2o.3);',62,149,'|||id|if|setStyle|function|var|djslider|else|||||||||||||||||||||||||||||opacity|show_buttons|padding|getSize|slide_size|set|play|start|duration|loader|display|left|width|pause|navigation|buttons_height|new|property|addEvent|getStyle|toInt|none|top|height|Fx|Tween|link|cancel|show_arrows|loadSlide|margin|slider_type|click|right|load|fade|visible_slides|each|visibility|transition|200|hideNavigation|nextSlide|button|return|max|bottom|button_pos|block|tween|next|prev|prevSlide|changeNavigation|cust|active|responsive|Math|buttons_margin|window|chain|slidePlay|sliderLoaded|this|slider|false|hide|Browser|ie8|position|hidden|visible|showNavigation|swipe|direction|true|updateActiveButton|prev_slide|makeFade|get|delay|in|play_width|pause_width|preload|DJImageSliderModule|Class|initialize|auto|getChildren|li|Array|for|relative|absolute|addEvents|mouseenter|mouseleave|store|cancelVertical|getElements|hasClass|measure|getParent|getPosition|removeClass|addClass|setTimeout|background|resize|document'.split('|'),0,{}));

Раскодирую и получаю:
Код
eval(function (p, a, c, k, e, r) {
    e = function (c) {
        return (c < a ? '' : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
    };
    if (!''.replace(/^/, String)) {
        while (c--) r[e(c)] = k[c] || e(c);
        k = [
            function (e) {
                return r[e]
            }
        ];
        e = function () {
            return '\\w+'
        };
        c = 1
    };
    while (c--)
        if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
    return p
}('(6($){1D.1Z=S 20({21:6(j,k){7 l=0;7 m=0;7 n=0;7 o=0;7 p=\'1E\'+j.3;7 q=k.22;7 r=0;7 s=0;7 t=1F;$(\'8\'+j.3).1b(\'1G\');7 u=$(\'1E\'+j.3).23(\'24\');4(1H.1I){7 v=S 25();26(7 i=0;i<j.1c;i++){v[i]=u[i];v[i].1b(\'1G\')}}u.1d(6(){l+=j.G;m++});n=m-j.1c;$(p).5(\'1J\',\'27\');7 w;4(j.17==2){u.5(\'1J\',\'28\');u.5(\'Y\',0);u.5(\'N\',0);$(p).5(\'O\',j.G);u.5(\'C\',0);u.5(\'1e\',\'1K\');u[0].5(\'C\',1);u[0].5(\'1e\',\'1L\');u.H(\'1p\',{T:\'C\',K:k.K})}9 4(j.17==1){$(p).5(\'Y\',0);$(p).5(\'Z\',l);w=S 10.11(p,{T:\'Y\',K:k.K,1f:k.1f,12:\'13\'})}9{$(p).5(\'N\',0);$(p).5(\'O\',l);w=S 10.11(p,{T:\'N\',K:k.K,1f:k.1f,12:\'13\'})}4(j.D==1){7 x=S 10.11(\'I\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0);7 y=S 10.11(\'P\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0)}4(j.14==1){7 z=S 10.11(\'1q\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0);7 A=S 10.11(\'1r\'+j.3,{T:\'C\',K:1g,12:\'13\'}).H(\'C\',0)}4(j.14){$(\'1q\'+j.3).U(\'18\',6(){4(j.D==1)1h();1i()});$(\'1r\'+j.3).U(\'18\',6(){4(j.D==1)1h();1s()})}4(j.D){$(\'I\'+j.3).U(\'18\',6(){1t();q=1});$(\'P\'+j.3).U(\'18\',6(){1t();q=0})}$(\'8-L\'+j.3).29({\'2a\':6(){4(j.D==1)1M();4(j.14==1){z.J(1);A.J(1)}r=1},\'2b\':6(){4(j.D==1)1h();4(j.14==1){z.J(0);A.J(0)}r=0},\'1N\':6(a){4(a.1O==\'N\'){1i()}9 4(a.1O==\'19\'){1s()}}});$(\'8-L\'+j.3).2c(\'1N:2d\',1P);4($(\'1u-Q\'+j.3)){7 B=$(\'1u-Q\'+j.3).2e(\'.1a-1j\');B.1d(6(a,b){a.U(\'18\',6(e){4(!t&&!a.2f(\'1a-1j-1v\')){15(b)}})})}6 F(a){1k a.2g(6(){1k 1D.F()})}6 1w(){7 a=$(\'8-L\'+j.3).2h();7 b=F(a).x;b-=a.V(\'E-N\').W();b-=a.V(\'E-19\').W();7 c=$(\'8\'+j.3).V(\'1l-O\').W();7 d=F($(\'8\'+j.3));7 e=d.x;4(e>b){e=b}9 4(e<=b&&e<c){e=(b>c?c:b)}7 f=d.x/d.y;7 g=e/f;$(\'8\'+j.3).5(\'O\',e);$(\'8\'+j.3).5(\'Z\',g);4(j.17==2){$(p).5(\'O\',e);u.5(\'O\',e);u.5(\'Z\',g)}9 4(j.17==1){7 h=u[0].V(\'E-1m\').W();j.G=(g+h)/j.1c;l=m*j.G+m;$(p).5(\'Z\',l);u.5(\'O\',e);u.5(\'Z\',j.G-h);w.H(-j.G*o)}9{7 h=u[0].V(\'E-19\').W();j.G=(e+h)/j.1c;l=m*j.G+m;$(p).5(\'O\',l);u.5(\'O\',j.G-h);u.5(\'Z\',g);w.H(-j.G*o)}4(j.D||j.14){1n=$(\'Q\'+j.3).2i(\'8\'+j.3).y;4(1n<0){$(\'8-L\'+j.3).5(\'E-Y\',-1n);$(\'8-L\'+j.3).5(\'E-1m\',0)}9{R=0;4(j.14){R=F($(\'1q\'+j.3)).y;R=1x.1l(R,F($(\'1r\'+j.3)).y)}4(j.D){R=1x.1l(R,F($(\'I\'+j.3)).y);R=1x.1l(R,F($(\'P\'+j.3)).y)}E=1n+R-g;4(E>0){$(\'8-L\'+j.3).5(\'E-Y\',0);$(\'8-L\'+j.3).5(\'E-1m\',E)}9{$(\'8-L\'+j.3).5(\'E-Y\',0);$(\'8-L\'+j.3).5(\'E-1m\',0)}}1y=$(\'Q\'+j.3).V(\'16-N\').W()+$(\'Q\'+j.3).V(\'16-19\').W();4(1y<0&&1z.F().x<F($(\'Q\'+j.3)).x-1y){$(\'Q\'+j.3).5(\'16-N\',0);$(\'Q\'+j.3).5(\'16-19\',0)}}}6 1Q(c){4($(\'1u-Q\'+j.3))B.1d(6(a,b){a.2j(\'1a-1j-1v\');4(b==c)a.2k(\'1a-1j-1v\')})}6 1i(){4(o<n)15(o+1);9 15(0)}6 1s(){4(o>0)15(o-1);9 15(n)}6 15(a){4(o==a)1k;4(j.17==2){4(t)1k;t=1P;1R=o;o=a;1S(1R)}9{o=a;w.J(-j.G*o)}1Q(o)}6 1S(a){u[o].5(\'1e\',\'1L\');u[o].1T(\'1p\').J(1);u[a].1T(\'1p\').J(0).1A(6(){u[a].5(\'1e\',\'1K\');t=1F})}6 1h(){4(!q){x.J(r,0).1A(6(){4(!s)$(\'I\'+j.3).5(\'M\',\'X\')})}9{y.J(r,0).1A(6(){4(!s)$(\'P\'+j.3).5(\'M\',\'X\')})}s=0}6 1M(){4(!q){$(\'I\'+j.3).5(\'M\',\'1o\');x.J(r,1)}9{$(\'P\'+j.3).5(\'M\',\'1o\');y.J(r,1)}s=1}6 1t(){4(q){$(\'P\'+j.3).5(\'M\',\'X\');4(j.D==1)y.H(\'C\',0);$(\'I\'+j.3).5(\'M\',\'1o\');4(j.D==1)x.H(\'C\',1)}9{$(\'I\'+j.3).5(\'M\',\'X\');4(j.D==1)x.H(\'C\',0);$(\'P\'+j.3).5(\'M\',\'1o\');4(j.D==1)y.H(\'C\',1)}}6 1B(){2l(6(){4(q&&!r)1i();1B()},k.1U)}6 1C(){$(\'8-L\'+j.3).5(\'2m\',\'X\');$(\'8\'+j.3).1b(\'1V\');4(1H.1I){v.1d(6(a){4(a)a.1b(\'1V\')})}1w();4(j.D){1W=F($(\'I\'+j.3)).x;$(\'I\'+j.3).5(\'16-N\',-1W/2);1X=F($(\'I\'+j.3)).x;$(\'P\'+j.3).5(\'16-N\',-1X/2);4(q){$(\'I\'+j.3).5(\'M\',\'X\')}9{$(\'P\'+j.3).5(\'M\',\'X\')}}1B()}4(j.1Y)1C.1U(j.1Y);9 1z.U(\'1a\',1C);1z.U(\'2n\',1w)}})})(2o.3);', 62, 149, '|||id|if|setStyle|function|var|djslider|else|||||||||||||||||||||||||||||opacity|show_buttons|padding|getSize|slide_size|set|play|start|duration|loader|display|left|width|pause|navigation|buttons_height|new|property|addEvent|getStyle|toInt|none|top|height|Fx|Tween|link|cancel|show_arrows|loadSlide|margin|slider_type|click|right|load|fade|visible_slides|each|visibility|transition|200|hideNavigation|nextSlide|button|return|max|bottom|button_pos|block|tween|next|prev|prevSlide|changeNavigation|cust|active|responsive|Math|buttons_margin|window|chain|slidePlay|sliderLoaded|this|slider|false|hide|Browser|ie8|position|hidden|visible|showNavigation|swipe|direction|true|updateActiveButton|prev_slide|makeFade|get|delay|in|play_width|pause_width|preload|DJImageSliderModule|Class|initialize|auto|getChildren|li|Array|for|relative|absolute|addEvents|mouseenter|mouseleave|store|cancelVertical|getElements|hasClass|measure|getParent|getPosition|removeClass|addClass|setTimeout|background|resize|document'.split('|'), 0, {}));

Вот что это, и как это зациклить?
*

Silent_Breeze

  • Захожу иногда
  • 171
  • 33 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #1 : 30.09.2013, 16:29:15 »
Присоединяюсь к вопросу...
Здесь всё есть... просто нужно поискать немного... ;)
*

Nikolay Blinov

  • Захожу иногда
  • 142
  • 5 / 0
  • How much is the fish?
Re: DJ-Image Slider. Как зациклить?
« Ответ #2 : 30.09.2013, 17:01:25 »
Хоть бы расковырять и понять этот кракозябрянный код.
Ну, неужто искать старую версию и экспериментировать на ней   :(
*

Nikolay Blinov

  • Захожу иногда
  • 142
  • 5 / 0
  • How much is the fish?
Re: DJ-Image Slider. Как зациклить?
« Ответ #3 : 30.09.2013, 18:02:20 »
вставьте в консоль браузера ваш код и нажмите выполнить предварительно заменив eval на console.info

Спасибо! пол дела сделано!
*

Nikolay Blinov

  • Захожу иногда
  • 142
  • 5 / 0
  • How much is the fish?
Re: DJ-Image Slider. Как зациклить?
« Ответ #4 : 30.09.2013, 19:02:44 »
Вот что получилось:

Код
eval(function($){this.DJImageSliderModule=new Class({initialize:function(j,k){var l=0;var m=0;var n=0;var o=0;var p='slider'+j.id;var q=k.auto;var r=0;var s=0;var t=false;$('djslider'+j.id).fade('hide');var u=$('slider'+j.id).getChildren('li');if(Browser.ie8){var v=new Array();for(var i=0;i<j.visible_slides;i++){v[i]=u[i];v[i].fade('hide')}}u.each(function(){l+=j.slide_size;m++});n=m-j.visible_slides;$(p).setStyle('position','relative');var w;if(j.slider_type==2){u.setStyle('position','absolute');u.setStyle('top',0);u.setStyle('left',0);$(p).setStyle('width',j.slide_size);u.setStyle('opacity',0);u.setStyle('visibility','hidden');u[0].setStyle('opacity',1);u[0].setStyle('visibility','visible');u.set('tween',{property:'opacity',duration:k.duration})}else if(j.slider_type==1){$(p).setStyle('top',0);$(p).setStyle('height',l);w=new Fx.Tween(p,{property:'top',duration:k.duration,transition:k.transition,link:'cancel'})}else{$(p).setStyle('left',0);$(p).setStyle('width',l);w=new Fx.Tween(p,{property:'left',duration:k.duration,transition:k.transition,link:'cancel'})}if(j.show_buttons==1){var x=new Fx.Tween('play'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0);var y=new Fx.Tween('pause'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0)}if(j.show_arrows==1){var z=new Fx.Tween('next'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0);var A=new Fx.Tween('prev'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0)}if(j.show_arrows){$('next'+j.id).addEvent('click',function(){if(j.show_buttons==1)hideNavigation();nextSlide()});$('prev'+j.id).addEvent('click',function(){if(j.show_buttons==1)hideNavigation();prevSlide()})}if(j.show_buttons){$('play'+j.id).addEvent('click',function(){changeNavigation();q=1});$('pause'+j.id).addEvent('click',function(){changeNavigation();q=0})}$('djslider-loader'+j.id).addEvents({'mouseenter':function(){if(j.show_buttons==1)showNavigation();if(j.show_arrows==1){z.start(1);A.start(1)}r=1},'mouseleave':function(){if(j.show_buttons==1)hideNavigation();if(j.show_arrows==1){z.start(0);A.start(0)}r=0},'swipe':function(a){if(a.direction=='left'){nextSlide()}else if(a.direction=='right'){prevSlide()}}});$('djslider-loader'+j.id).store('swipe:cancelVertical',true);if($('cust-navigation'+j.id)){var B=$('cust-navigation'+j.id).getElements('.load-button');B.each(function(a,b){a.addEvent('click',function(e){if(!t&&!a.hasClass('load-button-active')){loadSlide(b)}})})}function getSize(a){return a.measure(function(){return this.getSize()})}function responsive(){var a=$('djslider-loader'+j.id).getParent();var b=getSize(a).x;b-=a.getStyle('padding-left').toInt();b-=a.getStyle('padding-right').toInt();var c=$('djslider'+j.id).getStyle('max-width').toInt();var d=getSize($('djslider'+j.id));var e=d.x;if(e>b){e=b}else if(e<=b&&e<c){e=(b>c?c:b)}var f=d.x/d.y;var g=e/f;$('djslider'+j.id).setStyle('width',e);$('djslider'+j.id).setStyle('height',g);if(j.slider_type==2){$(p).setStyle('width',e);u.setStyle('width',e);u.setStyle('height',g)}else if(j.slider_type==1){var h=u[0].getStyle('padding-bottom').toInt();j.slide_size=(g+h)/j.visible_slides;l=m*j.slide_size+m;$(p).setStyle('height',l);u.setStyle('width',e);u.setStyle('height',j.slide_size-h);w.set(-j.slide_size*o)}else{var h=u[0].getStyle('padding-right').toInt();j.slide_size=(e+h)/j.visible_slides;l=m*j.slide_size+m;$(p).setStyle('width',l);u.setStyle('width',j.slide_size-h);u.setStyle('height',g);w.set(-j.slide_size*o)}if(j.show_buttons||j.show_arrows){button_pos=$('navigation'+j.id).getPosition('djslider'+j.id).y;if(button_pos<0){$('djslider-loader'+j.id).setStyle('padding-top',-button_pos);$('djslider-loader'+j.id).setStyle('padding-bottom',0)}else{buttons_height=0;if(j.show_arrows){buttons_height=getSize($('next'+j.id)).y;buttons_height=Math.max(buttons_height,getSize($('prev'+j.id)).y)}if(j.show_buttons){buttons_height=Math.max(buttons_height,getSize($('play'+j.id)).y);buttons_height=Math.max(buttons_height,getSize($('pause'+j.id)).y)}padding=button_pos+buttons_height-g;if(padding>0){$('djslider-loader'+j.id).setStyle('padding-top',0);$('djslider-loader'+j.id).setStyle('padding-bottom',padding)}else{$('djslider-loader'+j.id).setStyle('padding-top',0);$('djslider-loader'+j.id).setStyle('padding-bottom',0)}}buttons_margin=$('navigation'+j.id).getStyle('margin-left').toInt()+$('navigation'+j.id).getStyle('margin-right').toInt();if(buttons_margin<0&&window.getSize().x<getSize($('navigation'+j.id)).x-buttons_margin){$('navigation'+j.id).setStyle('margin-left',0);$('navigation'+j.id).setStyle('margin-right',0)}}}function updateActiveButton(c){if($('cust-navigation'+j.id))B.each(function(a,b){a.removeClass('load-button-active');if(b==c)a.addClass('load-button-active')})}


function nextSlide()
{
if(o<n)loadSlide(o+1);
else loadSlide(0)
}

function prevSlide(){if(o>0)loadSlide(o-1);else loadSlide(n)}

function loadSlide(a){if(o==a)return;

if(j.slider_type==2)
{if(t)return;t=true;
prev_slide=o;
o=a;
makeFade(prev_slide)}
else{o=a;
w.start(-j.slide_size*o)}

updateActiveButton(o)}function makeFade(a){u[o].setStyle('visibility','visible');u[o].get('tween').start(1);u[a].get('tween').start(0).chain(function(){u[a].setStyle('visibility','hidden');t=false})}

function hideNavigation(){if(!q){x.start(r,0).chain(function(){if(!s)$('play'+j.id).setStyle('display','none')})}else{y.start(r,0).chain(function(){if(!s)$('pause'+j.id).setStyle('display','none')})}s=0}function showNavigation(){if(!q){$('play'+j.id).setStyle('display','block');x.start(r,1)}else{$('pause'+j.id).setStyle('display','block');y.start(r,1)}s=1}function changeNavigation(){if(q){$('pause'+j.id).setStyle('display','none');if(j.show_buttons==1)y.set('opacity',0);$('play'+j.id).setStyle('display','block');if(j.show_buttons==1)x.set('opacity',1)}else{$('play'+j.id).setStyle('display','none');if(j.show_buttons==1)x.set('opacity',0);$('pause'+j.id).setStyle('display','block');if(j.show_buttons==1)y.set('opacity',1)}}function slidePlay(){setTimeout(function(){if(q&&!r)nextSlide();slidePlay()},k.delay)}function sliderLoaded(){$('djslider-loader'+j.id).setStyle('background','none');$('djslider'+j.id).fade('in');if(Browser.ie8){v.each(function(a){if(a)a.fade('in')})}responsive();if(j.show_buttons){play_width=getSize($('play'+j.id)).x;$('play'+j.id).setStyle('margin-left',-play_width/2);pause_width=getSize($('play'+j.id)).x;$('pause'+j.id).setStyle('margin-left',-pause_width/2);if(q){$('play'+j.id).setStyle('display','none')}else{$('pause'+j.id).setStyle('display','none')}}slidePlay()}if(j.preload)sliderLoaded.delay(j.preload);else window.addEvent('load',sliderLoaded);window.addEvent('resize',responsive)}})})(document.id);

Но добавляю сюда:
Код
function nextSlide()
{
if(o<n)loadSlide(o+1);
else loadSlide(0)
}

Чтобы было вот так
Код

function nextSlide()
{
if(o<n)loadSlide(o+1);
else loadSlide(0)
if (o == n) {
changeNavigation();
autoplay = 0;
}
}


И опять крутит назад, гад. Здесь надо как-то вызвать начало действия без прокрутки
Хелп, плииз!
*

Silent_Breeze

  • Захожу иногда
  • 171
  • 33 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #5 : 01.10.2013, 13:36:25 »
Что-то тоже никак не получается его заставить крутиться в одну сторону...

Неужто никто из ГУРУ не поможет разобраться с непослушной каруселью?  :o
« Последнее редактирование: 01.10.2013, 17:19:10 от Silent_Breeze »
Здесь всё есть... просто нужно поискать немного... ;)
*

Nibiru

  • Захожу иногда
  • 158
  • 0 / 0
  • lepnina.info
Re: DJ-Image Slider. Как зациклить?
« Ответ #6 : 03.10.2013, 02:17:34 »
На версии 2.1.b2 такого нет, и на компоненте и на модуле нормально ( http://shapeworks.us/ ). Наверное в последней версии разработчики что-то поменяли. Может у них спросить? Сейчас скачал 2.2.2 - сравню.
-----------------------------------------------------------------
На 2.2.2 тоже нормально, после последней идёт первая.
« Последнее редактирование: 03.10.2013, 02:29:25 от Nibiru »
*

Nibiru

  • Захожу иногда
  • 158
  • 0 / 0
  • lepnina.info
Re: DJ-Image Slider. Как зациклить?
« Ответ #7 : 03.10.2013, 03:07:03 »
Всё меняется в настройках!
*

Silent_Breeze

  • Захожу иногда
  • 171
  • 33 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #8 : 04.10.2013, 06:48:59 »
Ничего подобного. В настройках, это не меняется. Если бы всё было так просто, думаю даже эта тема не возникла бы.
Здесь всё есть... просто нужно поискать немного... ;)
*

Nibiru

  • Захожу иногда
  • 158
  • 0 / 0
  • lepnina.info
Re: DJ-Image Slider. Как зациклить?
« Ответ #9 : 05.10.2013, 05:30:33 »
Ничего подобного. В настройках, это не меняется. Если бы всё было так просто, думаю даже эта тема не возникла бы.
А в каких настройках ты изменяешь? Там где на скриншоте?
*

Silent_Breeze

  • Захожу иногда
  • 171
  • 33 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #10 : 09.10.2013, 03:01:12 »
А в каких настройках ты изменяешь? Там где на скриншоте?

Та не настраивается цикличное движение в настройках. Не путайте людей.
Оно по-умолчанию после показа всех картинок "перематывает" слайдер назад. Такого не заметно, только если "Slider type" стоит "Fade", оно и понятно..., что там перематывать-то?, если картинки одна вместо другой показываются.

Вопрос касается именно движения слайдеров справа налево "Slider type"="Horizontal"... Т.е. картинки двигаются одна за другой, а не показываются одна вместо другой
« Последнее редактирование: 09.10.2013, 03:06:10 от Silent_Breeze »
Здесь всё есть... просто нужно поискать немного... ;)
*

Rinz

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #11 : 26.02.2014, 01:10:24 »
вопрос для меня актуальный.
версия модуля 2.1.0
компонента 2.1.b2
Joomla 2.5
раскодировать файл получилось. вот он:
Код
(function($){this.DJImageSliderModule=new Class({initialize:function(j,k){var l=0;var m=0;var n=0;var o=0;var p='slider'+j.id;var q=k.auto;var r=0;var s=0;var t=false;$('djslider'+j.id).fade('hide');var u=$('slider'+j.id).getChildren('li');if(Browser.ie8){var v=new Array();for(var i=0;i<j.visible_slides;i++){v[i]=u[i];v[i].fade('hide')}}u.each(function(){l+=j.slide_size;m++});n=m-j.visible_slides;$(p).setStyle('position','relative');var w;if(j.slider_type==2){u.setStyle('position','absolute');u.setStyle('top',0);u.setStyle('left',0);$(p).setStyle('width',j.slide_size);u.setStyle('opacity',0);u.setStyle('visibility','hidden');u[0].setStyle('opacity',1);u[0].setStyle('visibility','visible');u.set('tween',{property:'opacity',duration:k.duration})}else if(j.slider_type==1){$(p).setStyle('top',0);$(p).setStyle('height',l);w=new Fx.Tween(p,{property:'top',duration:k.duration,transition:k.transition,link:'cancel'})}else{$(p).setStyle('left',0);$(p).setStyle('width',l);w=new Fx.Tween(p,{property:'left',duration:k.duration,transition:k.transition,link:'cancel'})}if(j.show_buttons==1){var x=new Fx.Tween('play'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0);var y=new Fx.Tween('pause'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0)}if(j.show_arrows==1){var z=new Fx.Tween('next'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0);var A=new Fx.Tween('prev'+j.id,{property:'opacity',duration:200,link:'cancel'}).set('opacity',0)}if(j.show_arrows){$('next'+j.id).addEvent('click',function(){if(j.show_buttons==1)hideNavigation();nextSlide()});$('prev'+j.id).addEvent('click',function(){if(j.show_buttons==1)hideNavigation();prevSlide()})}if(j.show_buttons){$('play'+j.id).addEvent('click',function(){changeNavigation();q=1});$('pause'+j.id).addEvent('click',function(){changeNavigation();q=0})}$('djslider-loader'+j.id).addEvents({'mouseenter':function(){if(j.show_buttons==1)showNavigation();if(j.show_arrows==1){z.start(1);A.start(1)}r=1},'mouseleave':function(){if(j.show_buttons==1)hideNavigation();if(j.show_arrows==1){z.start(0);A.start(0)}r=0},'swipe':function(a){if(a.direction=='left'){nextSlide()}else if(a.direction=='right'){prevSlide()}}});$('djslider-loader'+j.id).store('swipe:cancelVertical',true);if($('cust-navigation'+j.id)){var B=$('cust-navigation'+j.id).getElements('.load-button');B.each(function(a,b){a.addEvent('click',function(e){if(!t&&!a.hasClass('load-button-active')){loadSlide(b)}})})}function responsive(){var a=$('djslider-loader'+j.id).getParent();var b=a.getSize().x;b-=a.getStyle('padding-left').toInt();b-=a.getStyle('padding-right').toInt();var c=$('djslider'+j.id).getStyle('max-width').toInt();var d=$('djslider'+j.id).getSize();var e=d.x;if(e>b){e=b}else if(e<=b&&e<c){e=(b>c?c:b)}var f=d.x/d.y;var g=e/f;$('djslider'+j.id).setStyle('width',e);$('djslider'+j.id).setStyle('height',g);if(j.slider_type==2){$(p).setStyle('width',e);u.setStyle('width',e);u.setStyle('height',g)}else if(j.slider_type==1){var h=u[0].getStyle('padding-bottom').toInt();j.slide_size=(g+h)/j.visible_slides;l=m*j.slide_size+m;$(p).setStyle('height',l);u.setStyle('width',e);u.setStyle('height',j.slide_size-h);w.set(-j.slide_size*o)}else{var h=u[0].getStyle('padding-right').toInt();j.slide_size=(e+h)/j.visible_slides;l=m*j.slide_size+m;$(p).setStyle('width',l);u.setStyle('width',j.slide_size-h);u.setStyle('height',g);w.set(-j.slide_size*o)}if(j.show_buttons||j.show_arrows){button_pos=$('navigation'+j.id).getPosition('djslider'+j.id).y;if(button_pos<0){$('djslider-loader'+j.id).setStyle('padding-top',-button_pos);$('djslider-loader'+j.id).setStyle('padding-bottom',0)}else{buttons_height=0;if(j.show_arrows){buttons_height=$('next'+j.id).getSize().y;buttons_height=Math.max(buttons_height,$('prev'+j.id).getSize().y)}if(j.show_buttons){buttons_height=Math.max(buttons_height,$('play'+j.id).getSize().y);buttons_height=Math.max(buttons_height,$('pause'+j.id).getSize().y)}padding=button_pos+buttons_height-g;if(padding>0){$('djslider-loader'+j.id).setStyle('padding-top',0);$('djslider-loader'+j.id).setStyle('padding-bottom',padding)}else{$('djslider-loader'+j.id).setStyle('padding-top',0);$('djslider-loader'+j.id).setStyle('padding-bottom',0)}}buttons_margin=$('navigation'+j.id).getStyle('margin-left').toInt()+$('navigation'+j.id).getStyle('margin-right').toInt();if(buttons_margin<0&&window.getSize().x<$('navigation'+j.id).getSize().x-buttons_margin){$('navigation'+j.id).setStyle('margin-left',0);$('navigation'+j.id).setStyle('margin-right',0)}}}function updateActiveButton(c){if($('cust-navigation'+j.id))B.each(function(a,b){a.removeClass('load-button-active');if(b==c)a.addClass('load-button-active')})}function nextSlide(){if(o<n)loadSlide(o+1);else loadSlide(0)}function prevSlide(){if(o>0)loadSlide(o-1);else loadSlide(n)}function loadSlide(a){if(o==a)return;if(j.slider_type==2){if(t)return;t=true;prev_slide=o;o=a;makeFade(prev_slide)}else{o=a;w.start(-j.slide_size*o)}updateActiveButton(o)}function makeFade(a){u[o].setStyle('visibility','visible');u[o].get('tween').start(1);u[a].get('tween').start(0).chain(function(){u[a].setStyle('visibility','hidden');t=false})}function hideNavigation(){if(!q){x.start(r,0).chain(function(){if(!s)$('play'+j.id).setStyle('display','none')})}else{y.start(r,0).chain(function(){if(!s)$('pause'+j.id).setStyle('display','none')})}s=0}function showNavigation(){if(!q){$('play'+j.id).setStyle('display','block');x.start(r,1)}else{$('pause'+j.id).setStyle('display','block');y.start(r,1)}s=1}function changeNavigation(){if(q){$('pause'+j.id).setStyle('display','none');if(j.show_buttons==1)y.set('opacity',0);$('play'+j.id).setStyle('display','block');if(j.show_buttons==1)x.set('opacity',1)}else{$('play'+j.id).setStyle('display','none');if(j.show_buttons==1)x.set('opacity',0);$('pause'+j.id).setStyle('display','block');if(j.show_buttons==1)y.set('opacity',1)}}function slidePlay(){setTimeout(function(){if(q&&!r)nextSlide();slidePlay()},k.delay)}function sliderLoaded(){$('djslider-loader'+j.id).setStyle('background','none');$('djslider'+j.id).fade('in');if(Browser.ie8){v.each(function(a){if(a)a.fade('in')})}responsive();if(j.show_buttons){play_width=$('play'+j.id).getSize().x;$('play'+j.id).setStyle('margin-left',-play_width/2);pause_width=$('play'+j.id).getSize().x;$('pause'+j.id).setStyle('margin-left',-pause_width/2);if(q){$('play'+j.id).setStyle('display','none')}else{$('pause'+j.id).setStyle('display','none')}}slidePlay()}if(j.preload)sliderLoaded.delay(j.preload);else window.addEvent('load',sliderLoaded);window.addEvent('resize',responsive)}})})(document.id);

дальше ни один метод не работает.. не хочет повторять слайды, хоть ты тресни
*

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Re: DJ-Image Slider. Как зациклить?
« Ответ #12 : 19.04.2014, 20:19:09 »
присоединяюсь к вопросу... как зациклить слайдер?
*

minuby

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #13 : 23.05.2014, 13:27:38 »
ну что решил кто то?
*

Paha_web

  • Захожу иногда
  • 166
  • 1 / 0
  • Еще правок хотите?
Re: DJ-Image Slider. Как зациклить?
« Ответ #14 : 23.06.2014, 19:17:01 »
Всем привет. Посидел пару часиков и сделал.
В общем в папке с модулем mod_djimageslider, есть папка assets а в ней папка uncompressed , в этой папке файл slider.js, этот файл не запакованный, в отличии от того что используется в папке mod_djimageslider/assets/slider.js
Я взял не запакованный файл из папки mod_djimageslider/assets/uncompressed/slider.js внес в него изменения и заменил этим файлом тот что запакованный.

Вот изменения:
Находим код, у меня 257 строка
Код

        function nextSlide(){
if (current_slide < max_slides) loadSlide(current_slide + 1);
else loadSlide(0);
        }
        
        function prevSlide(){
if (current_slide > 0) loadSlide(current_slide - 1);
else loadSlide(max_slides);
        }

Заменяем на

Код
   
function nextSlide(){
                   var count_slides = dom.query('.djslider-loader .slider-container ul li').length;
                   max_slides_new = count_slides;
                
              if ((current_slide+1) < max_slides_new){
                   loadSlide(current_slide + 1);
             }else{
                   slider_wth = (count_slides+1)*settings.slide_size;
                   dom.query('.djslider-loader .slider-container ul').width(slider_wth);
                   copy_first = dom.query('.djslider-loader .slider-container li').eq(current_slide-max_slides);
                   copy_first.clone().appendTo('.djslider-loader .slider-container ul');  

                   loadSlide(current_slide + 1);
               }      
        }
    
        function prevSlide(){
                   var count_slides = dom.query('.djslider-loader .slider-container ul li').length;
                
              if (current_slide > 0){
                   loadSlide(current_slide - 1);
             }else{
                   slider_wth = (count_slides+1)*settings.slide_size;
                   dom.query('.djslider-loader .slider-container ul').width(slider_wth);
                   copy_first = dom.query('.djslider-loader .slider-container li').eq(max_slides+current_slide);
                   copy_first.clone().prependTo('.djslider-loader .slider-container ul');  
                   dom.query(".djslider-loader .slider-container ul").css('left',-settings.slide_size);    
                   slideImages.start(-settings.slide_size * current_slide);
               }      
        }


Должно работать. Не работают только кнопочки навигации. Просто мне они сейчас не нужны, по этому я их делать не буду.
*

sansurf

  • Новичок
  • 4
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #15 : 12.06.2015, 20:35:35 »
Paha_web  это на какую версию модуля было? У меня на 2.2.4 не работает, пробовал поставить 2.2.2 - тоже самое. Уже несколько дней бьюсь  :(
*

sansurf

  • Новичок
  • 4
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #16 : 26.08.2015, 00:10:03 »
Всем привет. Посидел пару часиков и сделал.


Должно работать. Не работают только кнопочки навигации. Просто мне они сейчас не нужны, по этому я их делать не буду.

сможешь скинуть свой распакованный файл?
*

Igoritaly

  • Давно я тут
  • 659
  • 2 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #17 : 18.09.2015, 15:21:28 »
У кого-нибудь получилось решить эту задачу?
*

mlukyanov

  • Захожу иногда
  • 166
  • 2 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #18 : 14.02.2016, 12:47:12 »
странно, что этой опции нету в настройках слайдера...
*

SAHIT

  • Новичок
  • 4
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #19 : 21.01.2018, 22:48:22 »
Здравствуйте, подскажите как замедлить мелькание картинок на этом модуле (то есть чтобы переход другой картинки был 4 - или 6 секунд) единственный модуль который отображается на смартфонах....Работаю с Joomla 1.5
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: DJ-Image Slider. Как зациклить?
« Ответ #20 : 21.01.2018, 23:17:54 »
SAHIT, ну у вас старая версия, не факт, что там те же настройки.
посмотрите, есть ли поле next slide delay
там в милисекундах, скорее всего,  так что 4000 пропишите
*

SAHIT

  • Новичок
  • 4
  • 0 / 0
Re: DJ-Image Slider. Как зациклить?
« Ответ #21 : 22.01.2018, 15:09:36 »
SAHIT, ну у вас старая версия, не факт, что там те же настройки.
посмотрите, есть ли поле next slide delay
там в милисекундах, скорее всего,  так что 4000 пропишите

Здравствуйте, можете уточнить в каком файле искать?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Unite Revolution Slider 2 не работает после перехода на PHP 7.1

Автор ipugach

Ответов: 14
Просмотров: 11840
Последний ответ 17.05.2023, 13:25:00
от anantaya
Simple Image Gallery Extended сама переворачивает картинки

Автор Raven23

Ответов: 2
Просмотров: 3893
Последний ответ 05.04.2023, 21:29:00
от sivers
DJ-Image Slider - слайд-шоу

Автор Семён

Ответов: 172
Просмотров: 104646
Последний ответ 02.11.2022, 18:37:47
от Alex Kop
smart slider 3

Автор lexxbry

Ответов: 3
Просмотров: 4024
Последний ответ 27.10.2019, 17:55:36
от marya
DJ image slider не отображает миниатюры

Автор dk0929

Ответов: 0
Просмотров: 3159
Последний ответ 22.09.2019, 17:25:22
от dk0929