好的,我已经做了一段时间的JS合并,但仍然无法弄清楚成功合并背后的逻辑。它归结为在合并列表上重新定位库向上和向下。有时jquery必须在顶部,有时它不会。有时需要将fancybox添加为addJs,有时添加为addItem。
那么,当您使用Magento的合并JS时,导致JS库崩溃的经验是什么?是否有成功合并的规则?
更新:刚才在我的local.xml中,我从
搬过来<action method="addItem"><type>skin_js</type><name>js/magiczoomplus.js</name></action>
到
<action method="addJs"><script>jquery/magiczoomplus.js</script></action>
这解决了我在页面上遇到的magiczoomplus错误。怎么样?
我正在努力理解这个问题,以便将来更好地解决这个问题
答案 0 :(得分:6)
你需要在这里理解核心原则javascript库之间有什么冲突。
在jQuery和Prototype冲突的情况下和在Magento中:
答案 1 :(得分:2)
如果在启用Javascript合并后出现任何问题,我总是尝试用这些文件的非最小化版本替换最小化的Javascript文件。它总能解决问题。 (我不知道为什么最小化文件存在问题)
答案 2 :(得分:1)
实际修复合并的选项并不多,但
1。)在local.xml文件中使用group
- 以确保更好的合并。
http://fishpig.co.uk/blog/why-you-shouldnt-merge-javascript-in-magento.html
2。)放弃Magento的内置合并,并使用Fooman_Speedster
代替。
http://www.magentocommerce.com/magento-connect/fooman-speedster.html
到目前为止,第二个对我来说非常合适。我正在使用jQuery库甚至更多(Handlebars等),我没有任何问题。
答案 3 :(得分:1)
对我有用的是在原型之后移动jQuery include并添加jQuery.noConflict();在jQuery包括之后。
答案 4 :(得分:1)
在这段时间之后对我有用的是: