Drupal 7 и jQuery
Делаю я сейчас один мелкий сайтец на седьмом Друпале, - мне так легче его изучать. Ну и возникла у меня необходимость в написании простенького javascript-а. Создал я в папке темы script.js-файл, прописал его куда надо, кэш сбросил и начал писать. Писал я его понятное дело на jQuery, чистым jvascript-ом уже мало кто пользуется.
При проверке, мне начало в консоль выкидывать ошибку, что де переменная $ не определена:
Uncaught TypeError: Property '$' of object [object DOMWindow] is not a function >
Что и сказать, бред полный. Я уже много лет пользуюсь jQuery и такого не было ещё. Гугл привёл меня сюда, где рекомендуется весь свой скрипт оборачивать в конструкцию:
(function ($) { // All your code here }(jQuery));
и тут всё стало понятно. Оказывается разработчики Друпала, ради мифической совместимости jQuery с другими фреймворками, не заразервировали $-переменную за jQuery. Странный шаг, - jQuery очень популярный фреймворк и логичнее было бы оставить эту переменную за ним (тем более, что именно jQuery по-умолчанию используется в Друпале), а все прочие фреймворки использовать по имени (Prototype, Dojo, ...).
Как бы то ни было, мне предложенный вариант не понравился, я записал в самом начале скрипта строку:
if (!$) $=jQuery; ...
и дальше работал как привык без проблем.
Последние посты
Комментарии
- Главная » Администрирование »
8 weeks 3 days ago - Огромное спасибо!
9 weeks 2 days ago - Ну это уже зависит от того,
9 weeks 3 days ago - Видимо убрали клиенты. Раньше
9 weeks 3 days ago - Переключатели
9 weeks 4 days ago - Прекрасный сайт: много
10 weeks 4 days ago - Не согласен. Если первый if
13 weeks 1 day ago - ищу работу
13 weeks 5 days ago - ПОИСК РАБОТЫ:ЭЛЕКТРОМОНТЁР 5 РАЗРЯДА
13 weeks 5 days ago - По моему функция t()
14 weeks 3 days ago
Архив
- August 2010 (8)
- September 2010 (16)
- October 2010 (13)
- November 2010 (9)
- December 2010 (5)
- January 2011 (5)
- February 2011 (3)
- March 2011 (3)
- April 2011 (5)
- May 2011 (5)
Новый комментарий