Проблема с jQuery на DLE 9.3

12
Korew
На сайте с 31.12.2007
Offline
195
4705

Решил на DLE добавить вкладки. Нашел отличный вариант с использованием jQuery

http://ruseller.com/lessons.php?rub=32&id=287

Только вот в DLE уже есть встроенный jQuery. Если дополнительно не подключать другой jQuery (который с вкладками), то вкладки не работают, если подключать - то не работает много разной фигни на DLE (всплывающие окна, добавление комментариев и т.д.)

Можно как-то объеденить 2 jQuery в 1? Или данная проблема как-то по-другому решается?

T
На сайте с 13.04.2008
Offline
67
t3s
#1

делать табуляцию на jQuery имхо извращение, но если все-таки решили то на ruseller.com указан потрясающий пример того, как никогда нельзя подключать jQuery

подозреваю (а если скажете урл пациента то буду знать наверняка) что у вас получается конфликт версий, т.е. дле хочет одну библиотеку а ваш табулятор другую

попробуйте строку

<script src='jquery.js' type='text/javascript'></script>

которая указана в примере на руселлере заменить на вот такую

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

это заставит грузить библиотеку не с вашего сайта а с гугла - т.е. "облегчит" сайт

затем откройте свой шаблон (сайт.ком\templates\название_шаблона), найдите в нем файл main.tpl и ищите где подключается библиотека - вы точно найдете строку по слову jquery

если она выглядит примерно так

<script type="text/javascript" src="{THEME}/js/jquery.min.js"></script>

то замените ее на

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

смысл всего вышепроделанного - теперь во-первых и шаблон и табулятор используют одну и ту же библиотеку, а во-вторых сайт будет работать быстрее (если интересно, проаргументирую за счет чего)

webamator (http://webamator.ru) приглашает потестить сервис бесплатной оптимизации CSS и JavaScript (http://service.webamator.ru/) Занимаюсь проектами любой сложности. Качественно. Дорого. Примеры некоторых работ (http://blog.webamator.ru/category/portfolio)
Korew
На сайте с 31.12.2007
Offline
195
#2
t3s:
делать табуляцию на jQuery имхо извращение, но если все-таки решили то на ruseller.com указан потрясающий пример того, как никогда нельзя подключать jQuery

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

t3s:
попробуйте строку которая указана в примере на руселлере заменить на вот такую

тогда вкладки перестают работать

t3s:
затем откройте свой шаблон (сайт.ком\templates\название_шаблона), найдите в нем файл main.tpl и ищите где подключается библиотека - вы точно найдете строку по слову jquery

В ДЛЕ как-то по-другому подключается. В шаблоне указан только тег {headers}

Hallboy222
На сайте с 24.02.2010
Offline
119
#3

С dle-news

Неожиданно обновился фреймворк jQuery до версии 1.6.1, в DLE на момент релиза была версия 1.6. Было принято решение также включить новую версию фреймворка в состав дистрибутива DLE. В принципе непосредственно для DLE никакой разницы в этом нет, он стабильно работает на любых версиях фреймворка начиная от версии 1.5, но возможно тому, кто использует различные другие плагины для фреймворка на сайте, это пригодится.

Поэтому если у вас есть желание, использовать версию фреймворка именно 1.6.1 и вы скачали дистрибутив в котором 1.6, то вы можете повторно взять файл /engine/classes/js/jquery.js из обновленного архива дистрибутива. Тем кто использует только DLE без сторонних плагинов для этого фреймворка, в принципе обновлять его необязательно.
Магазин аккаунтов с балансом Litres,DNS,Ozon,Rotapost и еще 50+ других сервисов тут - vk.cc/7QK0Sk
Korew
На сайте с 31.12.2007
Offline
195
#4
Hallboy222:
С dle-news

Не помогает. Заменил jQuery на новый (уже даже 1.6.2 вышел). Если дополнительный не подключать (тот что с вкладками идет), то вкладки не работают. Если подключать - то вкладки работают, а разная ерунда на ДЛЕ нет (всплывающие окна, добавление комментариев и т.д.)

Hallboy222
На сайте с 24.02.2010
Offline
119
#5

Можно ссылку на сайт в ЛС? Вкладки подобные, как у меня www.seven-soft.com или я путаю?

Так же на jQuery.

[Удален]
#6

Ничего удивительного нет. Вкладки - это не метод чистого jQuery, а метод jQuery User Interface. Это отдельная надстройка на jQuery. DLE использует по умолчанию оригинальный jQuery UI. Там вкладки подключаются иначе. Те вкладки, что на руселлере, были выдраны вот отсюда. Это jQuery Tools, ещё одна надстройка над jQuery также с использованием jQuery UI. И эти вкладки, на мой взгляд, более гибко и аккуратно реализованы. Flowplayer.org тоже используют UI, но уже по-своему. Соответственно, конфликт происходит не между jQuery, а между jQuery UI - встроенными ДЛЕшным (который и есть оригинальный) и jQuery Tools от flowplayer, куда также входит UI и уже включены вкладки.

Решение: брать custom jQuery UI без подключения вкладок и установить его вместо DLE-шного. Т.е. опцию tabs надо отключить.

Саму библиотеку jQuery подключить от google APIs, как Вам уже показали.

И табы, которые вы ходите, подключить этой строкой, с офф сайта разработчиков:

<!-- UI Tools: Tabs, Tooltip, Scrollable and Overlay (4.05 Kb) -->
<script src="http://cdn.jquerytools.org/1.2.5/tiny/jquery.tools.min.js"></script>

А то, что нашли на руселлере, выкиньте.

Ну, или, как вариант, надо делать другие табы - как на официальном сайте jQuery UI. И тогда забыть про библиотеку от flowplayer.

Korew
На сайте с 31.12.2007
Offline
195
#7

Вот jQuery, который используется в DLE: jQuery.

А вот jQuery, который необходим для работы вкладок: jQuery Tabs

Может это как-то поможет знающим людям решить проблему :)

Korew добавил 02.07.2011 в 13:32

Freon:
Решение: брать custom jQuery UI без подключения вкладок и установить его вместо DLE-шного. Т.е. опцию tabs надо отключить.
Саму библиотеку jQuery подключить от google APIs, как Вам уже показали.
И табы, которые вы ходите, подключить этой строкой, с офф сайта разработчиков:

Сейчас попробую, спасибо

Zyukoff
На сайте с 26.11.2010
Offline
33
#8

Korew, вы решили проблему?

palarmaz
На сайте с 05.04.2010
Offline
125
#9

У самого такая проблема. Решил поставить слайдер. НА стандартном шаблоне Gemini вставляю строки и всплывающее окошко Логина-Пароля перестает работать.


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" ></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.3/jquery-ui.min.js" ></script>
<script type="text/javascript">
$(document).ready(function(){
$("#featured > ul").tabs({fx:{opacity: "toggle"}}).tabs("rotate", 5000, true);
});
</script>
palarmaz
На сайте с 05.04.2010
Offline
125
#10

Нужно в шаблон подключить:


<script type="text/javascript">
jQuery.noConflict();
(function($) {
$(function(){
$("#tabs").tabs();
});
})(jQuery);
</script>

И все заработает.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий