Saya telah melakukan yang berikut untuk memasukkan jQuery dari Google CDN di Magento:
<default>
<reference name="head">
<block type="core/text" name="google.cdn.jquery">
<action method="setText">
<text><![CDATA[<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script><script type="text/javascript">jQuery.noConflict();</script>]]>
</text>
</action>
</block>
</reference>
</default>
Namun ketika saya ingin mengimplementasikannya dengan fallback lokal, yang berfungsi dengan baik, saya akhirnya menambahkannya ke .phtml saya seperti:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
if (!window.jQuery) {
document.write('<script src="/path/to/your/jquery"><\/script>');
}
</script>
- Apakah ada cara yang lebih elegan untuk melakukan ini di local.xml daripada mendorong fallback ke
<text>
node seperti yang saya lakukanjQuery.noConflict
?
Edit:
Untuk menarik perhatian ke bagian lain dari pertanyaan - apakah ada modul komunitas yang menyertakan jQuery untuk Anda? Jika mereka memiliki jQuery lokal, itu bagus - jika mereka menggunakan Google CDN - bahkan lebih baik. Jika ini tidak ada, saya ingin membuatnya.
- Apakah ada ekstensi masuk yang menangani ini tanpa saya harus bootstrap sendiri?
<text>
metode seperti yang dijelaskan di atas ... tidak yakin apakah itu solusi yang dapat diterima. Modul n98 menggunakan js terpisah termasuk file untuk memanggil noConflict, meskipun, saya kira ...