我这里有问题。当我的鼠标悬停在div上时,div中会出现一个文本。当它从div中鼠标输出时,文本将消失。我的问题是,当鼠标在出现的文本上时,它将从div处理它是mouseout,导致文本消失。我该怎么做才能避免这种情况?我希望文本保持只要鼠标在div中,即使它在文本上方。谢谢..
<div class="passd"></div>
$('.passd').live("mouseover", function(){
if($(this).children('#passopt').length==0){
$(this).append('<p id="passopt">appear text</p>');
}
});
$('.passd').live("mouseout", function(){
$(this).children('#passopt').remove();
});
答案 0 :(得分:2)
试试这个:
$('.passd')
.live("mouseenter", function() {
$(this).append('<p id="passopt">appear text</p>');
})
.live("mouseleave", function() {
$(this).children('#passopt').remove();
});
经过测试,有效:http://jsfiddle.net/xLzdP/
答案 1 :(得分:1)
你可以改用mouseleave事件......
答案 2 :(得分:0)
查看http://flowplayer.org/tools/tooltip/index.html以查看它是否可以执行您想要的操作...
答案 3 :(得分:0)
使用.hover()可以达到同样的效果:
$('.passd').hover(function() {
$(this).append('<p id="passopt">appear text</p>');
}, function(){
$(this).children('#passopt').remove();
});