Иногда необходимо одновременно использовать две мощные библиотеки - jQuery & Prototype. Как избежать проблем в синтаксе?
Украина, Киев •
ул. Дегтяревская 50, оф. 601 •
welcome@aloha.kiev.ua •
Совместимость jQuery & Prototype

Я любю CMS SPIP. CMS SPIP любит jQuery. Я раньше любил Prototype, а теперь люблю jQuery.
Однако возникла необходимость одновременно использовать обе библиотекию При помощи jQuery я сделал симпатичную выпадающую менюшку с анимацией, а Prorotype нужен что бы подключить lightbox - замечательную штуку, которая увеличивает картинки в том же окне броузера но нажатию мышки. А проблема совместимости библиотек в том, что синтаксис у них очень похожий. Все дело в знаке $.
Мне очень сильно помогда статья jQuery – Javascript нового поколения в которой и описано решение данной проблемы. Но статья большая, что бы все не листать можно посмотреть тут.
Совместимость
Вместо знака доллара достаточно использовать функцию jQuery:
jQuery("#myid"); // Эквивалентно $("#myid");
Самой библиотеке jQuery можно запретить использование знака доллар:
<script src="prototype.js">
<script src="jquery.js">
<script>
jQuery.noConflict();
// Дальше используем jQuery через jQuery(...)
jQuery("#myid").hide();
// Используем Prototype через $(...)
$('myid').addClassName('active').show();
</script>Сейчас я думаю, что написать сложный калькулятор ( не такой простой, как мой - расчет стоимости сайта, а с динамическим формированием формы и прочими вещами намного проще с помощью jQuery. А уж динамически изменять css и html и подавно.


