Show and Hide Div onMouseOver
问题描述:
嘿,大家,在这里只需要一点点帮助,这跟我之后的事情非常接近,但并不完全。Show and Hide Div onMouseOver
我想要将鼠标悬停在文字链接上以在目标div中为隐藏文字设置动画效果。因此,当我将鼠标悬停在链接A上时,该文本淡入;当我将鼠标悬停在链接B,在前文慢慢消失,而在新的文字淡化
这里是我的javascript:
<script type="text/javascript">
function ShowHide(){
$("#textMessages").animate({"height": "toggle"}, { duration: 1000 });
}
</script>
这里是我的链接:
<a onMouseOver="ShowHide(); return false;" href="#">Message A</a>
<a onMouseOver="ShowHide(); return false;" href="#">Message B</a>
<a onMouseOver="ShowHide(); return false;" href="#">Message C</a>
这里是我的目标格与文本片段淡入和淡出:
<div id="textMessages">
<div id="defaultMessage">
Lorem ipsum dolor sit amet, consectetur adipiscing elit
</div>
<div id="MessageA">
Lorem ipsum dolor sit amet, consectetur adipiscing elit
</div>
<div id="MessageB">
Lorem ipsum dolor sit amet, consectetur adipiscing elit
</div>
<div id="MessageC">
Lorem ipsum dolor sit amet, consectetur adipiscing elit
</div>
</div>
我假设我需要设置#消息A/B/C显示y:none
答
这里是我的出价 “改良” 的答案:
$(function(){
var slideOut = null;
$('#textMessages').slideUp(1000);
$('#textMessages,.textMessagesLink').hover(function(){
$("#textMessages").slideDown(1000);
if (slideOut != null) {
clearTimeout(slideOut);
slideOut = null
}
},function(){
slideOut = setTimeout(HideHide,1000);
});
function HideHide(){
$('#textMessages').slideUp(1000);
}
});
在这样拍了计时器的优势。此外,只要将鼠标悬停在div上就可以对链接进行小的更改(添加一个类以供参考),div也将保持可见状态(可通过从.hover()
选择器中选择'#textMessages'进行修改。
工作例如:http://www.jsfiddle.net/bradchristie/zgbfa/1/ 的以“内容的div”考虑又如:http://www.jsfiddle.net/bradchristie/zgbfa/3/(可以玩弄defaultDiv
,如果你想和
宾果有没有办法动画文本。!? FadeIn/Out SlideUp/Down? – brianrhea 2011-01-18 21:17:51
当然,你可以使用'fadeIn'和'fadeOut'来代替'show'/'hide'。 net/rcravens/md3Xe/6/ – rcravens 2011-01-18 21:22:08