Hey,
I also needed that function and I found a solution. It works if you have more than one image for product and shows the second one:
1) In my template override
/html/com_hikashop/product/listing_img_title.php
I added
<span class="obrazek2">
<?php echo $this->row->images[1]->file_path;?>
</span>
in line 72
2) In CSS I added of course:
.obrazek2 {
display:none
}
3) Than supposing you have 4 columns view and original images set as 420px x 420px (like in my case), you add a jQuery code to your template:
jQuery('.hkc-md-3.hikashop_product').each(function(){
var obrazek = jQuery.trim(jQuery(this).find('.obrazek2').text());
var obrazekOk = jQuery(this).find('img').attr('src');
if (obrazek.length > 15)
{
jQuery(this).find('img.hikashop_product_listing_image').mouseover(function(){
jQuery(this).css('width','182px').height('182px').attr('src','/new/images/com_hikashop/upload/thumbnails/420x420f/'+obrazek)
})
jQuery(this).find('img.hikashop_product_listing_image').mouseout(function(){
jQuery(this).attr('src',obrazekOk)
})
}
})
Works fine.