Конфликт скриптов
Добрый день. Прошу помощи, т.к. в JS почти ноль.
Есть три скрипта: <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" /> <script src="//code.jquery.com/jquery-1.11.3.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <script type="text/javascript"> $ (function(){ $("a.but").click(function(){ $("h3.rad").toggleClass("disp"); }); }); </script> <script type="text/javascript"> /*accordion*/ $(function() { $( ".accordion" ).accordion({ header: "h3", heightStyle: "content", collapsible: true, //autoHeight: false, navigation: true, active: false }); $( "#tabs" ).tabs(); }); /*вверх*/ $(window).scroll(function(){ if ($(this).scrollTop() > 100) { $('.scrollup').fadeIn(); } else { $('.scrollup').fadeOut(); } }); $('.scrollup').click(function(){ $("html, body").animate({ scrollTop: 0 }, 600); return false; }); /*Autocmplt*/ $(function() { var availableTags = [ <?php $sql_auto_complete = 'SELECT name FROM games'; $arr_auto_complete = getArray($sql_auto_complete); foreach($arr_auto_complete as $elem) { echo "'{$elem['name']}',"; } ?> ]; $( "#search" ).autocomplete({ source: availableTags }); }); </script> Первый - переключатель. Второй - аккордион, третий - автокомплит. Понадобилось поставить переключатель, но он не работает. А если удалить аккордион-скрипт, то первый работает, но криво отображается сам аккордион. А вот автокомплит работает при любом раскладе. Я подозреваю, что конфликт в названиях функций. А как их в JS изменить, не знаю. |
denisok82,
Попробуйте заменить цифру в библиотеке <script src="//code.jquery.com/jquery-1.11.4.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> |
jquery-1.11.3.js - последняя версия. Выше не существует, сегодня проверял.
|
denisok82,
Вот чего пишут про code.jquery.com/ui/1.11.4/jquery-ui.js // support: jQuery <1.8 // support: jQuery 1.6.1, 1.6.2 (http://bugs.jquery.com/ticket/9413) Так шо нун эти версии ставить для самой jQuery, - пробуйте http://code.jquery.com/jquery-1.7.2.js Она надежна и <1.8 |
Deff,
прошу прощения, но вы уверены, что проблема именно в версии JQ? В течение года на сайте всё работало на этой версии и проблем не было. Работали и аккордион и хайлайтер и автокомплит. Причем работает и новый toggle, но только если убрать скрипт аккордиона. |
denisok82,
Не уверен, (я посмотрел исходник UI - прочел что можно прочесть) |
denisok82,
В принципе, переключатель стоит ставить в самый низ всех скриптов ============ Что он и где переключает ? ============ Функции(названия) в глобале не пересекаются, ибо все переменные стоят внутри внешних функций $ |
Deff,
Просто скрывает часто строк. <style> .disp { display: none; } </style> |
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" /> <script src="//code.jquery.com/jquery-1.11.3.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <script type="text/javascript"> /*accordion*/ $(function() { $( ".accordion" ).accordion({ header: "h3", heightStyle: "content", collapsible: true, //autoHeight: false, navigation: true, active: false }); $( "#tabs" ).tabs(); }); /*вверх*/ $(window).scroll(function(){ if ($(this).scrollTop() > 100) { $('.scrollup').fadeIn(); } else { $('.scrollup').fadeOut(); } }); $('.scrollup').click(function(){ $("html, body").animate({ scrollTop: 0 }, 600); return false; }); /*Autocmplt*/ $(function() { var availableTags = [ <?php $sql_auto_complete = 'SELECT name FROM games'; $arr_auto_complete = getArray($sql_auto_complete); foreach($arr_auto_complete as $elem) { echo "'{$elem['name']}',"; } ?> ]; $( "#search" ).autocomplete({ source: availableTags }); }); </script> <script type="text/javascript"> $ (function(){ $("a.but").click(function(){ $("h3.rad").toggleClass("disp"); }); }); </script> Такое расположение - не меняет проблемы ? Дайте ссылку на тестовую страницу с проблемами |
|
Часовой пояс GMT +3, время: 08:51. |