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/