Joomla 3.x Проблема с lightbox

Тема в разделе "Программирование", создана пользователем Night_Pilgrim, 16.05.2014.

  1. Night_Pilgrim
    Offline

    Night_Pilgrim Пользователь

    Регистрация:
    02.02.2009
    Сообщения:
    47
    Симпатии:
    0
    Пол:
    Мужской
    Здравствуйте.
    Суть, есть нужда в плагине, который бы выводил изображения в lightbox, при этом имея возможность прокрутки изображений, как в галерее.

    Т.е. имеется скажем в материале 5 картинок, нажал на одну открылось в лайтбоксе, нажал правую клавишу на клавиатуре перелистнул на следующую и т.д.

    По не ясной мне причине, лайтбоксы на всех бесплатных модулях, которые мне попадались - не работали.

    Поэтому, решил всё же заморочиться с стандартным JHTML::_('behavior.modal'); лайтбокс создаётся/открывается, да, но я не знаю, как его настроить таким образом, чтобы он:

    а - предоставлял возможность открыть в том же окне следующее изображение
    б - создавал лайтбокс опираясь на размер изображения (скажем у меня 2 картинки, одна 800х600 вторая 600х800, чтобы он менял местами ширину и высоту в соответствии с параметрами изображений).
     
  2.  
  3. Yulechka
    Offline

    Yulechka Недавно здесь

    Регистрация:
    18.08.2014
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Женский
    такое бывало когда лайтбокс подключался не в том месте и без noconflicta.


    Если прописать подключение прям в самом верху index.php шаблона (до подключения остальных скриптов) - вероятно заработает
     
  4. Night_Pilgrim
    Offline

    Night_Pilgrim Пользователь

    Регистрация:
    02.02.2009
    Сообщения:
    47
    Симпатии:
    0
    Пол:
    Мужской
    а можно поподробнее, что значит прописывать в index.php ?

    я понял куда, я не понял как...
     
  5. Yulechka
    Offline

    Yulechka Недавно здесь

    Регистрация:
    18.08.2014
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Женский
    Ну в папке шаблона, есть файл index.php Это компоновочный файл (там ещё везде jdoc:include)

    Из-за того что в джумале применяется мотолс и возможно куча других скриптов - могут происходить их конфликты. И поэтому jquery может глючить. Вообще бывает стоит поменять местами JS как всё чудесным образом начинает работать.

    Последовательно отключая скрипты и меняя место их подключения можно выяснить в чём причина.

    Я прям в самый вверх прописал в секции <HEAD>

    Код (CODE):
    1. echo '
    2. <!-- Add jQuery library -->
    3. <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
    4. <!-- Add mousewheel plugin (this is optional) -->
    5. <script type="text/javascript" src="/fancybox/lib/jquery.mousewheel-3.0.6.pack.js"></script>
    6. <!-- Add fancyBox -->
    7. <link rel="stylesheet" href="/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
    8. <script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
    9. <!-- Optionally add helpers - button, thumbnail and/or media -->
    10. <link rel="stylesheet" href="/fancybox/source/helpers/jquery.fancybox-buttons.css?v=1.0.5" type="text/css" media="screen" />
    11. <script type="text/javascript" src="/fancybox/source/helpers/jquery.fancybox-buttons.js?v=1.0.5"></script>
    12. <script type="text/javascript" src="/fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.6"></script>
    13. <link rel="stylesheet" href="/fancybox/source/helpers/jquery.fancybox-thumbs.css?v=1.0.7" type="text/css" media="screen" />
    14. <script type="text/javascript" src="/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=1.0.7"></script>
    15. <script type="text/javascript">
    16.     $(document).ready(function() {
    17.         $(".fancybox").fancybox();
    18.     });
    19. </script>
    20. ';
    21. }



    далее, если не сработает надо отключить мотолс.

    Поубирать вручную из head в шаблоне всякую джумальную гадость, подключающую скрипты, до тех пор, пока Лайтбокс не заработает. Таким образом можно выяснить какой скрипт конфликтует.

    ______________
    PS

    По правилам надо:
    1) Подключать сначала jquery потом мотолс
    2) Надо подключить библиотеку ноуконфликт для jqyery
    3) далее в скриптах джейквери везде заменить знак $ на JQery

    тогда они конфликтовать не должны.
    TplHelper::loadJS
     

Поделиться этой страницей

Загрузка...