即使我发现问题存在问题,我也无法找到解决方法。
好吧,我有一个'添加到购物车'按钮,可以采用以下两种形式的代码:
CODE 1:
<div class="cart">
<a class="button" onclick="addToCart('710'); _gaq.push(['_trackEvent', 'Category Page', 'Add to Cart', 'Large Dual Fitting Pluto Metal Lighting Pendant Shades - Green']);">
<span>Add to Basket</span>
</a>
</div>
和
CODE 2:
<div class="cart">
<a class="button" onclick="addToCart('710');">
<span>Add to Basket</span>
</a>
</div>
我有一个单独的common.js文件,它定义了addToCart()函数。我遇到的具体代码是:
if (json['success']) {
html = '<div class="popup-cart-info"><div class="popup-close"><a alt="Close & Continue" onclick="closeCart();" title="Close & Continue" ><img src="catalog/view/javascript/jquery/fancybox/fancy_close.png"></a></div>';
MainImg = $('a[onclick="addToCart(\'' + product_id + '\');"]').parents().find('.image a img');
AltImg = $('a[onclick="addToCart(\'' + product_id + '\');"]').parent().parent().parent().find('.left .image a img');
if(MainImg.length) {
html += '<div class="cart-box-img"><img style="width:150px;" src="' + MainImg.attr('src') + '" /></div>';
} else if(AltImg.length) {
html += '<div class="cart-box-img"><img style="width:150px;" src="' + AltImg.attr('src') + '" /></div>';
} else {
html += '<div class="cart-box-img"><img style="width:130px;" src="image/no_image1.jpg" title="Image Unavailable" alt="Image Unavailable" /></div>';
}
html += '<div class="cart-box-succ-det">' + json['success'] + '</div>';
}
分配MainImg的位似乎与CODE2一起使用但不与CODE1一起使用。两者之间的唯一区别是_gaq.push()函数。如果我在Firefox中使用FireBug并删除_gaq.push()函数,它似乎运行良好。我要做的就是传递已添加到购物车的产品的图像源。但是当它旁边还有一个功能时,它不起作用。
我的问题是,即使在onclick事件中定义了两个函数,如何使用parents()函数选择标记。
您可以在http://bit.ly/YEW2f2看到我想要实现的目标。图像是针对“新到货”而非“特色产品”获得的。
非常感谢任何帮助。 谢谢你的期待。 问候, Karthick
答案 0 :(得分:0)
你可以试试这个:http://api.jquery.com/attribute-starts-with-selector/而不是[onclick = ...]
答案 1 :(得分:0)
选择器
a[onclick="addToCart('170');]
当然不匹配
<a class="button" onclick="addToCart('710'); _gaq.push(['_trackEvent', 'Cat ...
因为onclick属性不包含完全文本a[onclick="addToCart('170');]
,但不止于此。
要在内容开始时使用指定文字选择属性,请使用比较“operator”^=
代替=
。