Magento не загружает мои скрипты в порядке, который я хочу

Я редактирую local.xml файл для загрузки некоторого JavaScript, один из них - carosule.js, и я хочу его только на моей странице индекса, чтобы я мог использовать <cms_index_index> узел, но он создается init.js, Как я могу загрузить их в порядке, который я хочу?

  <cms_index_index>
        <reference name="head">
            <action method="addItem">
            <type>skin_js</type>
            <name>js/mycaro.js</name>
            </action>
        </reference>

    </cms_index_index>

     <default>
        <reference name="head">
            <action method="addItem">
                <type>skin_js</type>
                <name>js/jquery.min.js</name>
            </action> 
            <action method="addItem">
                <type>skin_js</type>
                <name>js/init.js</name>
            </action>

        </reference>
    </default>

В данный момент загружается в этом порядке

<script type="text/javascript" src="http://localhost/m/skin/frontend/hs1st/default/js/jquery.min.js"></script>
<script type="text/javascript" src="http://localhost/m/skin/frontend/hs1st/default/js/init.js"></script>
<script type="text/javascript" src="http://localhost/m/skin/frontend/hs1st/default/js/mycaro.js"></script>

1 ответ

Загрузка плагина не должна зависеть от порядка загрузки файлов. Вы должны запустить загрузку плагина после завершения загрузки DOM, чтобы убедиться, что все необходимые файлы загружены.

Допустим, init.js содержит что-то вроде этого;

jQuery('#carousel').Carousel({option:optionvalue});

Вы захотите обернуть его в код для запуска после завершения загрузки DOM, как здесь;

jQuery(window).ready(function () {
    jQuery('#carousel').Carousel({option:optionvalue});
});

Смотрите https://api.jquery.com/ready/

Другие вопросы по тегам