2010-11-30 2 views
1

Я начинаю с Wordpress и пытаюсь использовать jQuery в качестве моей библиотеки JavaScript по выбору. У меня есть загрузка с wp_enqueue_script, но по какой-то причине, когда страница действительно загружает функцию $, она делает это так, чтобы она вела себя так же, как в Prototype (знак одного доллара «get by Id» и $$ - это селекторная система CSS).jQuery oddity in Wordpress

Я очень смущен, почему, потому что я не могу найти нигде в ответе от сервера, откуда приходит инструкция для загрузки Prototype; нет тега <script> в голове или теле, который указывает на библиотеку, а список загруженных сценариев Firebug не включает его. Кто-нибудь еще столкнулся с этой проблемой, и если да, то где скрывается Prototype?

Update

После того, как идея, я пытался что-то - поведение $ и $$ является частью копии Wordpress о JQuery 1.4.2: Загрузка скрипта из CDN Google, проблема решена. Итак, новый вопрос: «Почему Wordpress jQuery отличается от обычного jQuery?»

+2

Ссылка на страницу может быть полезна. Просто потому, что он «действует», как прототип, не означает, что это так; возможно, другой скрипт реализует поведение `$` и `$$`. – Matt 2010-11-30 17:08:59

+0

Это еще не живое, к сожалению. Однако единственным сценарием, который сайт требует загрузки, является jQuery v1.4.2, поэтому даже если это не прототип, все еще не так. – ehdv 2010-11-30 17:12:42

ответ

1

«Почему Wordpress jQuery отличается от обычного jQuery?»

WordPress загружает JQuery в no conflict mode - другой скрипт на странице должно быть, был мастерить с $ конечно?

0

Некоторые вещи, которые я мог бы попробовать для отладки это:

  • Сохранить страницу как -> Веб-страница, полная. Найдите результирующий каталог для «Prototype».

  • Затем начните переделывать с сохраненной копией страницы. Вы могли вставлять теги <script> в разные точки в документе, пытаясь выяснить, в какой момент установлен $, или в какой момент его поведение меняется.

  • Или, в Firefox, используйте this.watch("$", function() { alert(Error().stack); }), чтобы увидеть, где он установлен.