You need to target the contents of the hovered .item
$('.not-visible').hide();
$(".item").hover(function () {
$(this).find('.visible').hide();
$(this).find('.not-visible').show();
}, function () {
$(this).find('.visible').show();
$(this).find('.not-visible').hide();
});
Demo: Fiddle