I've got a set of items. Each item has two images and some text. For the images I've created a parent div which has a overflow:hidden CSS value. I want to achieve a mouseover effect. As soon as you hover over the images I want to hide the current div and show the second div. Here's a tiny snippet:
<div class="product-images">
<div class="product-image-1"><img src="image1.gif>" /></div>
<div class="product-image-2"><img src="images2.gif" /></d开发者_JAVA百科iv>
</div>
I've created a small jQuery snippet:
jQuery(document).ready(function() {
jQuery('.product-images').mouseover(function() {
jQuery('.product-image-1').hide();
}).mouseout(function() {
jQuery('.product-image-1').show();
});
});
Now the problem is not only the currently hovered child is hidden. Instead, all other existing children are hidden as well. I need something like "this" or "current" but I don't know which jQuery function is the right one. Any idea?
Thanks, BJ
I've found the solution. Thank you guys.
jQuery(document).ready(function() {
jQuery('.product-images').hover(function() {
jQuery(this).find('img:first').hide()
}, function() {
jQuery(this).find('img:first').show();
});
});
Is this what you are looking for?
jQuery(document).ready(function() {
jQuery('.product-images img').mouseover(function() {
jQuery(this).parent().hide();
}).mouseout(function() {
jQuery(this).parent().show();
});
});
This keyword works fine:
$(this).hide();
$(this).show();
精彩评论