|
||||||
|
Устраняем конфликт между разными версиями jquery. А так же как сделать что бы YoxView работал с новой версией jqueryСегодня при переносе сайта с ucoz столкнулся с проблемой. На сайте есть встроенная галерея, фотографии вставляются вручную, в определённый div, но на страницах сайта напоминают галерею. А проблема возникла в том что для галереи используется jquery плагин YoxView, но он работает только с версией jquery 1.4.2, и чуток выше, а на сайте используется версия jquery 1.7.1. Соответственно если подключить только старую библиотеку, то не работает функционал сайта, а с новой не работает галерея. Вернее не правильно работает, фотографии открываются, но нет кнопок перелистывания, и панели пропадают сразу же после открытия фото и больше не появляются, а если перелистывать фото нажав кнопку слайда или использовать комбинацию клавиш CTRL+стрелка влево или в право, то перелистывание работает неадекватно. Первое что сделал это пошел искать более новую версию YoxView, но оказалось что у меня и так последняя 2.1 версия. Похоже разработчик этого плагина отказался от развития своего детища, и не кто другой не адаптирует этот плагин под новые версии библиотеки jquery. Хотя может кто то и переделывал, но делиться не спешит. Второй мой шаг это поиск альтернативного плагина, но тут мои поиски окончились ничем, ничего подобного к сожалению не нашел, везде банальный lightbox и ему подобные. Хоть на своем блоге я его и использую lightbox но в этом проекте, да и в других думаю использовать YoxView. При поиске плагина нашел много интересных, красивые движения, «превьюшки» и еще куча мелочей, но почти все эти плагины используют rel="", что мне очень не подходит. YoxView же просто указываешь класс дива в котором содержатся все фотографии которые нужно использовать. По сути мой способ решить конфликт между разными версиями jquery не изобретениt велосипеда, многие о нем знают, но например использовали не совсем для моей задачи. Собственно речь идет про jQuery.noConflict(), который я думаю многие использовали как минимум при работе с jquery и mootools, здесь же конфликт возникает из-за того что обе библиотеки используют знак $. У меня же просто jquery только разные версии. При создании новых версий jquery, программисты убирают или переделывают какие то функции, соответственно старый плагин может и не работать с новой версией jquery. Что бы старая версия не мешала новой, нужно сделать следующее, сначала подключаете новую версию jquery, затем старую, а после этого пишете такой код:
Еще вам нужно будет открыть файл yoxview-init.js и закомментировать или удалить такие строки:
В коде я привел пример запуска выше упомянутого YoxView плагина, он вызывается jQuery(".yoxview").yoxview( … Возможно код нужно будет вставить между подключениями версий jquery, но в моем случае прокатило и последовательное подключение, покамест проблем я не обнаружил. Если у вас возникнут проблемы то пишите в комментариях, попробуем вместе разобраться. |
|||||
Главная | Портфолио | Услуги | Контакты | Блог |
Комментарии
Спасибо большое
Всю ночь просидел, пытался исправить, но ничего не получилось. В гугле первая ссылка и решение проблемы за две минуты. Спасибо большое!!!
Спасибо тебе огромное
Человек, спасибо тебе огромное, инфа не нова, но толкового объяснения ранее не нашёл.
Столкнулся с кофликтом nivo slider, который работает с jquery.1.4.3
и с turn.js, который работает на jquery.1.7.1 при помощи твоей статьи помирил их)) работают вместе!!
может поможете?
Здравствуйте, возможно вы сможете мне помочь?
Я не знаю как в полной мере написать здесь в комменте, все что хочу спросить, поэтому на своей странице написал всю суть.
Если не затруднит прочитайте:
http://www.gorbuhi.net/index/reshenie_problemy/0-153
Я уже все перепробовал, ничего не помогает, ни как не могу понять что сделать еще. :(
Конфликт из-за версий
Конфликт из-за версий библиотек. Весь свой код, а так же ссылку на джейквери поставьте после тега BODY, в 99% моих случаев помогало.