Ошибка “$(document).ready is not a function” в Joomla и ее решение

Добрый день читатели! Сегодня речь пойдет об очень-очень популярной ошибке, которая может возникать в CMS Joomla.

Представьте ситуацию. У вас сайта на Joomla, вы хотите, допустим, вставить сторонний скрипт, например, форму обратной связи на ajax. Вы точно знаете, что эта форма рабочая, не один раз ее использовали и тестировали. Вставляете на ваш сайт на joomla. Проверяете нажимая “отправить” и бамц – ничего не происходит.

В такой ситуации, первым делом вы будете проверять, подключен ли jquery вообще и правильная ли версия. Если вы уверенны, что все сделали правильно, но форма все равно не работает, необходимо проверить firebug консоль, чтобы понять, какую ошибку она вызывает.

В нашем случае ошибка будет

$(document).ready is not a function

Предыстория ошибки “$(document).ready is not a function”

По умолчанию в joomla используются некоторые js-фреймворки. Один из таких фреймворков – motools, который переписывает символ $, который вы пытаетесь использовать в ваших скриптах.

Решение проблемы

В вашем скрипте необходимо заменить все “$” на “jQuery”.

Например, если у вас написано

var posName = $("#posName").val();

То вы должны заменить на

var posName = jQuery("#posName").val();

Или у вас

$(document).ready(function()

А должно быть

jQuery(document).ready(function()

И т.д.

Вот и все 🙂 Решение проблемы не очень сложное. Если возникли вопросы, пишите в комментариях

автор: Роман Довгаль

С 2010 года я занимаюсь интернет маркетингом. Сюда входит и SEO, и SMM, и SMO, и, собственно маркетинговое продвижение не только сайтов, а проектов в комплексе :)
Для меня каждый проект – это отдельная жизнь. Своя целевая аудитория, свои методы продвижения, свои показатели результативности :)

4 коментаря

Залишити коментар до Dmitriy Скасувати коментар