在Magento 1.9 CE中,如果我们浏览产品评论页面,则会显示错误
TypeError:image.elevateZoom不是函数
这是因为,magento正在使用此plugin
缩放产品页面中的图片JavaScript解释器,由于在此页面上关闭了失败,JavaScript不会被执行。这会导致页面功能下降。
任何人都可以帮我解决如何删除此错误,以便我可以在此页面上使用js吗?
These有人说他们已经解决了这个问题,但我无法解决问题。
我问了同样的question on Magento Stack。
答案 0 :(得分:6)
我遇到了同样的问题 - 并不是说它是一个完整的解决方案,但它现在肯定会停止错误,方法是停止在评论页面上调用该功能。
文件/skin/frontend/rwd/default/js/app.js中的
第649行更改
image.elevateZoom();
到
if ($('.review-product-list').length == 0) {
image.elevateZoom();
}
答案 1 :(得分:2)
我们刚刚为客户遇到了这个问题。通过将引用的脚本从最小版本更改为完整版本来解决此问题。所以替换这个:
<action method="addItem"><type>skin_js</type>
<script>js/lib/elevatezoom/jquery.elevateZoom-3.0.8.min.js</script>
</action>
有了这个:
<action method="addItem"><type>skin_js</type>
<script>js/lib/elevatezoom/jquery.elevateZoom-3.js</script>
</action>
错误已解决且缩放正常。
答案 2 :(得分:1)
打开app/design/frontend/your-package/your-theme/template/catalog/product/view/media.html
评论下面的代码部分
<!-- <script type="text/javascript">
// <![CDATA[
Event.observe(window, 'load', function() {
product_zoom = new Product.Zoom('image', 'track', 'handle', 'zoom_in', 'zoom_out', 'track_hint');
});
//]]>
</script> -->
答案 3 :(得分:0)
我遇到了同样的问题,经过长时间的搜索,我使用了这段代码,而且每件事情都运作良好。我在var $j = jQuery.noConflict();
函数之前使用elevateZoom
。
<script>
// Avoid PrototypeJS conflicts, assign jQuery to $j instead of $
var $j = jQuery.noConflict();
$("#zoom_07").elevateZoom({});
</script>