Navigation Menu

Magento + PrototypeJS + jQuery + noConflict() — The easiest way

Окт 24, 2013

Если тебе надо добавить в Magento проект jQuery то самым простым способом будет следующий: открой local.xml  своей темы найди дерективу <default> , сравни со следующим кодом и внеси изменения к себе XHTML <default> <reference name="head"> <!-- jQuery --> <action method="addItem"><type>skin_js</type><name>js/jquery/jquery.min.js</name></action> <block type="core/text" name="jQuery.noConflict"> <action method="setText"><text><![CDATA[<script type="text/javascript">jQuery.noConflict(); <span class="keyword">var</span> $j = jQuery.noConflict();</script>]]></text></action> </block> </reference> </default> 1234567891011 <default>    <reference name="head">         <!-- jQuery -->        <action method="addItem"><type>skin_js</type><name>js/jquery/jquery.min.js</name></action>        <block type="core/text" name="jQuery.noConflict">            <action method="setText"><text><![CDATA[<script type="text/javascript">jQuery.noConflict(); <span class="keyword">var</span> $j = jQuery.noConflict();</script>]]></text></action>        </block>     </reference></default> Что бы jQuery не конфликтовал с PrototypeJS выше указанный код «переводит» jQuery в «безопасный режим». Путь  js/jquery/jquery.min.js — это путь к файлу, который расположен по адресу, например: magento/skin/frontend/mbootstrap/default/js/jquery/jquery.js Для того что бы применять jQuery в *.phtml шаблонах я, как правило, использую структуру: XHTML <script> jQuery(document).ready(function ($) { /* enter your code here */ }); </script> 12345 <script>    jQuery(document).ready(function ($) {        /* enter your code here */    });</script> А в случае если надо использовать jQuery в рамках PrototypeJS, то может подойти вариант: JavaScript var $form = $j("#login-form"); 1 var $form = $j("#login-form"); Удачи...

Далее