Ссылка jQuery mouseover для отображения скрытого div
Я наткнулся на событие mouseover на сайте 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?
Ответы
Ответ 1
При наведении указателя мыши на текст ссылки вы устанавливаете видимость видимого символа div "привет" . Затем при наведении курсора на div "привет" вы также установите видимость "hello" div. При выводе div "привет" вы установите его видимость на "скрытый". Что-то вроде этого:
$("#show_div").mouseover(function() { $("#hello").css('visibility','visible'); });
$("#hello").mouseover(function() { $("#hello").css('visibility','visible'); });
$("#hello").mouseout(function() { $("#hello").css('visibility','hidden'); });
Ответ 2
Вы можете использовать функцию . 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>
UPDATE:
Как упоминалось в разделе комментариев, второй div исчезнет, если мышь покинет первую. Есть много плагинов там, которые позволят вам достичь желаемого поведения. Этот вариант выглядит особенно приятным.
Ответ 3
С помощью простого 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 не смежны.
Ответ 4
ИСПОЛЬЗОВАТЬ THİS
$ (document).on("click", "# test-element", function() {});