MooTools и jQuery
Решил установить на сайт (joomla 2.5) скрипт карты от CDEK.
В итоге в консоли ошибка: Uncaught TypeError: #<Object> is not a function at Array.forEach (<anonymous>) at Function.forEach (mootools-core.js:33) at Array.each (mootools-core.js:40) at Object.trigger (widjet.js:290) at Object.trigger (widjet.js:35) at Object.onCalc [as success] (widjet.js:1029) at i (ipjq.js:2) at Object.fireWith [as resolveWith] (ipjq.js:2) at A (ipjq.js:4) at XMLHttpRequest.<anonymous> (ipjq.js:4) widjet.js и ipjq.js - файлы виджета, соответственно. Многие элементы работают на MooTools 1.4.5, и их нельзя отключать. Есть ли варианты как исправить ошибку и всё подружить? Ссылка на файлы виджета и инструкция по установке тут. Страница сайта с проблемой тут. |
TRIGUN,
порядок загрузки 1.jQuery один раз на страницу. 2.плагины jQuery 3. грузить MooTools и скрипты на основе MooTools после всех остальных скриптов. |
Цитата:
Если mootools подключен на странице, то виджет карты не работает. ВОТ, например. Там обычная html-страница и на ней только виджет карты + mootools в самом конце. И все тоже самое, как и на сайте. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Виджет SDEK</title> <script id="ISDEKscript" type="text/javascript" src="widjet.js"></script> <script type="text/javascript"> var ourWidjet = new ISDEKWidjet ({ defaultCity: 'Новосибирск', cityFrom: 'Новосибирск', country: 'Россия', link: 'forpvz', path: 'scripts/', servicepath: 'scripts/service.php', apikey: '*******************' }); </script> <script src="mootools-core.js" type="text/javascript"></script> <script src="mootools-more.js" type="text/javascript"></script> </head> <body> <div id="forpvz" style="width:100%; height:600px;"></div> </body> </html> |
TRIGUN,
виджет грузит jQuery наступает конфликт. |
Цитата:
|
TRIGUN,
написать авторам виджета. или отредактировать виджет самостоятельно, или загрузить mootools с задержкой. |
Цитата:
Можете тогда подсказать, куда копать во втором и третьем варианте? |
TRIGUN,
вдруг поможет :) <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Виджет SDEK</title> <script id="ISDEKscript" type="text/javascript" src="widjet.js"></script> <script> var ourWidjet = new ISDEKWidjet ({ defaultCity: 'Новосибирск', cityFrom: 'Новосибирск', country: 'Россия', link: 'forpvz', path: 'scripts/', servicepath: 'scripts/service.php', apikey: '.......' }); </script> </head> <body> <div id="forpvz" style="width:100%; height:600px;"></div> <script> window.setTimeout(function() { document.body.insertAdjacentHTML('beforeEnd', `<script src="https://cdnjs.cloudflare.com/ajax/libs/mootools/1.6.0/mootools-core.min.js" type="text/javascript"><\/script> <script src="https://cdnjs.cloudflare.com/ajax/libs/mootools-more/1.6.0/mootools-more-compressed.js" type="text/javascript"><\/script>`) }, 2000) </script> </body> </html> |
рони,
Он так не сможет, это Joomla Ошибка вообще-то другая ReferenceError: jQuery is not defined k2.js:9:11 Включите загрузку jQuery в настройках K2 |
Цитата:
|
Часовой пояс GMT +3, время: 11:21. |