hover()
принимает два аргумента: обратный вызов, когда он активирован, и другой, когда он деактивирован так:
$("a.moreDetails").hover(function() {
$(this).next("div.details").stop().show("fast");
}, function() {
$(this).next("div.details").stop().show("slow");
});
Вы заметите, что я звоню stop()
. Это хорошая привычка при использовании анимации, иначе вы можете получить непреднамеренные визуальные артефакты из анимации в очереди.
Редактировать: Появление рядом с элементом имеет некоторые трудности. Вы можете изменить CSS:
div.details { display: inline; }
, и он появится рядом со ссылкой, но тогда эффекты jQuery не будут работать правильно, потому что они, как правило, устанавливают значение display: block
. Если вы не хотите или нуждаетесь в эффекте, вы можете просто использовать класс:
div.details { display: inline; }
div.hidden { display: none; }
и затем:
$("a.moreDetails").hover(function() {
$(this).next("div.details").addClass("hidden");
}, function() {
$(this).next("div.details").removeClass("hidden");
});