Создание шаблона

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО

Конфликтуют jqery

#1 21 декабря 2012 в 01:33
Здравствуйте, Решил написать шаблон на для 1.10
Столкнулся с проблемой:
Пытаюсь вставить tab бар, (Уж очень он мне понравился)
  1. <div id="vkladka">
  2. <li><a href="#" name="#ta1">Один</a></li>
  3. <li><a href="#" name="#tab2">Два</a></li>
  4. <li><a href="#" name="#tab3">Три</a></li>
  5. <li><a href="#" name="#tab4">Четыре</a></li>
  6. </div>
  7.  
  8. <div id="content">
  9. <div id="ta1">...</div>
  10. <div id="tab2">...</div>
  11. <div id="tab3">...</div>
  12. <div id="tab4">...</div>
  13. </div>
  14. <script type="text/javascript">
  15. function resetTabs(){
  16. $("#content div").hide();
  17. $("#vkladka a").attr("id","");
  18. }
  19.  
  20. var myUrl = window.location.href;
  21. var myUrlTab = myUrl.substring(myUrl.indexOf("#"));
  22. var myUrlTabName = myUrlTab.substring(0,4); //
  23.  
  24. (function(){
  25. $("#content div").hide(); //
  26. $("#vkladka li:first a").attr("id","current");
  27. $("#content div:first").fadeIn();
  28.  
  29. $("#vkladka a").on("click",function(e) {
  30. e.preventDefault();
  31. if ($(this).attr("id") == "current"){
  32. return
  33. }
  34. else{
  35. resetTabs();
  36. $(this).attr("id","current");
  37. $($(this).attr('name')).fadeIn();
  38. }
  39. });
  40.  
  41. for (i = 1; i <= $("#vkladka li").length; i++) {
  42. if (myUrlTab == myUrlTabName + i) {
  43. resetTabs();
  44. $("a[name='"+myUrlTab+"']").attr("id","current");
  45. $(myUrlTab).fadeIn();
  46. }
  47. }
  48. })()
  49. </script>
Ну и подключаю библиотеку
  1. <script src="/templates/.../js/jquery-1.7.2.min.js либо (jquery-1.8.3.js) " type="text/javascript"></script>
После подключения, вкладки в профиле пользователя перестают работать, и имеют вид:

Профиль
Лента
Клубы
Награды

(то есть столбиком)
Как можно решить эту проблему?
#2 21 декабря 2012 в 01:36
mr.Z, может не подключили стили, а может забыли <ul>, если, конечно, работает скрипт.)
#3 21 декабря 2012 в 01:40
Нет, все подключено. Все перепроверил, даже заново переписал шаблон (сначала не мог понять в чем причина) отключаю jquery-1.7.2.min.js все начинает работать…
#4 21 декабря 2012 в 01:45
mr.Z, хм, советую посмотреть какие ещё стили привязываются к вкладкам… может что-то конфликтует. У меня так было как-то, правила файл .css относящийся как раз к jquery, treeview… Поищите в этом направлении, вдруг там проблема)))
#5 21 декабря 2012 в 01:52
Azura, А jqery не могут конфликтовать? в частности моя ( jquery-1.7.2.min.js) и та которая отвечает за вкладки в профиле (jquery.ui.min.js)?
#6 21 декабря 2012 в 01:59
mr.Z, честно, я не программист и логически если мыслить, то вам. Если скрипт обращается и к файлу и библиотеке и получает разные инструкции, то конфликт есть… Хотя если честно, то по-моему сам jquery.ui.min.js получает инструкции из библиотеки. А попробуйте подключить скрипты в разных местах… Или воспользоваться стандартным скриптом вкладок jquery.ui.min.js.
А вообще дождитесь наших гуру — они вам всё разъяснят.😊Я уверена ошибка у вас какая-то плёвая, прям как у меня как-то была)))
#7 21 декабря 2012 в 02:29
двойное подключение jquery. она уже подключена у нас (правда, более старая)
#8 21 декабря 2012 в 15:13

двойное подключение jquery. она уже подключена у нас (правда, более старая)

Олег Васильевич я
А как ее подключить к шаблону? ну или хотя бы путь до нее…
#9 21 декабря 2012 в 15:34

А как ее подключить к шаблону

вам же ответили

она уже подключена


Просто не подключайте свою библиотеку и будет вам счастье. Или ваш скрипт на версии 1.5 не работает?
#10 21 декабря 2012 в 17:21


Просто не подключайте свою библиотеку и будет вам счастье. Или ваш скрипт на версии 1.5 не работает?

Pasha
… или подключайте только на тех страницах где нужно (в шаблонах компонентов или модулей).
Не всегда, но в большинстве случаев работает, особенно если подключаете более позднюю версию скрипта.
#11 21 декабря 2012 в 17:53

или подключайте только на тех страницах где нужно

Да лучше все же использовать jQuery.noConflict(), тогда будет работать в любом случае.
#12 21 декабря 2012 в 18:05



Просто не подключайте свою библиотеку и будет вам счастье. Или ваш скрипт на версии 1.5 не работает?

Pasha
да, скрипт работает только на версии 1.7 и выше,
#13 21 декабря 2012 в 18:10



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

Pasha
Скрипт вставлен в шаблон, во вкладках я хочу выводить контент сайта (модули)
#14 21 декабря 2012 в 18:18
Да не важно куда он вставлен. Используйте для подключеия новой версии jQuery.noConflict() и радуйтесь своим табам. Подробнее нужно написать или сами разберетесь?
#15 21 декабря 2012 в 18:48


Да не важно куда он вставлен. Используйте для подключеия новой версии jQuery.noConflict() и радуйтесь своим табам. Подробнее нужно написать или сами разберетесь?

Pasha
Ну если Вам не сложно, то по подробнее…
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.