我在extratorrent网站上遇到了鼠标悬停事件,如下图所示。
alt text http://img3.imageshack.us/img3/4516/usercommment999.jpg
当您将鼠标悬停在用户名链接上时,它会显示一个隐藏的div。非常整洁和光滑。
我是jQuery的新手。任何人都可以告诉我如何开始在正确的轨道上做到这一点?感谢。
更新1:
我写了类似下面的内容试图得到结果。问题是当我将鼠标移出链接时Div不会停留,它会立即消失。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#show_div").mouseover(function() { $("#hello").css('visibility','visible'); });
$("#show_div").mouseout(function() { $("#hello").css('visibility','hidden'); });
});
</script>
</head>
<body>
<a id="show_div" href="#">Link text</a>
<div id="hello" style="visibility:hidden;">
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
</div>
</body>
</html>
当鼠标悬停在Div上时,如何使Div保持可见?
答案 0 :(得分:12)
当鼠标悬停在Link文本上时,将div“hello”的Visiblility设置为visible。然后在鼠标悬停div“hello”时,您还将div“hello”可见性设置为可见。在鼠标输出div“你好”时,你将其可见性设置为“隐藏”。像这样:
$("#show_div").mouseover(function() { $("#hello").css('visibility','visible'); });
$("#hello").mouseover(function() { $("#hello").css('visibility','visible'); });
$("#hello").mouseout(function() { $("#hello").css('visibility','hidden'); });
答案 1 :(得分:3)
您可以使用.hover功能:
$(function() {
$('#divOne').hover(function() {
$('#divTwo').show();
}, function() {
$('#divTwo').hide();
});
});
你有两个div:
<div id="divOne">div one</div>
<div id="divTwo" style="display: none;">div two</div>
更新:
如评论部分所述,如果鼠标离开第一个div,第二个div将消失。有many plugins out there可以让您实现所需的行为。 This one看起来特别好。
答案 2 :(得分:0)
使用简单的HTML:
<div class="div1">Hover me</div>
<div class="div2" style="display: none">Hi, there</div>
当通过div1
时,您会显示div2
,并且只有在用户进入后才会隐藏它,然后退出:
<script type="text/javascript">
$('.div1').hover(function() {$('.div2').show()});
$('.div2').hover(function() {}, function() {$('.div2').hide()});
</script>
这是一种快速,非最佳的解决方案,但即使两个div不相邻也能正常工作。
答案 3 :(得分:0)
使用THISS
$(document).on(“click”,“#test-element”,function(){});