всплывающие меню
добрый день
вот столкнулся с тем что не знаю как это реализовать? хочу сделать всплывающие меню, решил использовать "div" и функцию "hover". наводишь мышку на слово "simple text" окно появляется, убираешь мышку с объекта окно пропадает. как сделать так чтоб окно оставалось и тогда когда мышка наведена на само окно, а не только на объект?
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<title>Untitled Document</title>
<script>
$(document).ready(function() {
$("#text").hover(function(){
$(".window").show(400);
}, function(){
$(".window").hide(400);
})
});
</script>
<style>
.wrap{width:200px; height:200px; margin:50px auto; border:1px solid #CCC; position:relative;}
.window{ width:100px; height:50px; background:#ccc; border:1px solid #CCC; display:none; position:absolute; top:20px; left:20px;}
</style>
</head>
<body>
<div class="wrap"><span id="text">simple text</span>
<div class="window"></div>
</div>
</body>
</html>
заранее благодарен |
Цитата:
|
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<title>Untitled Document</title>
<script>
$(document).ready(function() {
$("#text").hover(function(){
$(".window").show(400);
}, function(){
$(".window").hide(400);
})
});
</script>
<style>
.wrap{width:200px; height:200px; margin:50px auto; border:1px solid #CCC; position:relative;}
.window{ width:100px; height:50px; background:#ccc; border:1px solid #CCC; display:none; position:absolute; top:20px; left:20px;}
</style>
</head>
<body>
<div class="wrap"><div id="text">
simple text
<div class="window"></div>
</div>
</div>
</body>
</html>
|
tsigel,
<script>
$(document).ready(function() {
$("#text").mouseenter(function(){
$(".window").stop().show(400);
}).mouseleave(function(){
$(".window").stop().hide(400);
})
});
</script>
Иначе дергается |
Deff,
Имеете в виду не чистится очередь? Так этого не было в вопросе) |
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<title>Untitled Document</title>
<script>
$(document).ready(function() {
$(".wrap").mouseenter(function(){
$(this).find(".window").stop().show(400);
}).mouseleave(function(){
$(this).find(".window").stop().hide(400);
})
});
</script>
<style>
.wrap{width:200px; height:200px; margin:50px auto; border:1px solid #CCC; position:relative;}
.window{ width:100px; height:50px; background:#ccc; border:1px solid #CCC; display:none; position:absolute; top:20px; left:20px;}
</style>
</head>
<body>
<div class="wrap">
<div id="text">simple text<div class="window"></div></div>
</div>
<div class="wrap">
<div id="text1">simple text<div class="window"></div></div>
</div>
<div class="wrap">
<div id="text2">simple text<div class="window"></div></div>
</div>
</body>
</html>
|
давай я попробую объяснит без картинки, если не получится тогда сделаю картинку
при наведении мышки на фразу "simple text" появляется окно (.window) - что и есть меню, если переходишь мышкой на этот появившийся (.window) то оно исчезает, потому что убрал мышку с "simple text". а нужно чтоб оно (.window) оставалось и исчезало только когда убираешь с него (.window) мышку |
:-E :blink:
Уже аж 2 варианта реализовано выше) ;) |
ого, пока я писал свои мысли тут уже сколько вариантов.
огромное всем спасибо |
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<title>Untitled Document</title>
<script>
$(document).ready(function() {
$("#text").mouseenter(function(){
$(this).find(".window").stop().show(400);
}).mouseleave(function(){
$(this).find(".window").stop().hide(400);
})
});
</script>
<style>
.wrap{width:200px; height:200px; margin:50px auto; border:1px solid #CCC; position:relative;}
.window{ width:100px; height:50px; background:#ccc; border:1px solid #CCC; display:none; position:absolute; top:20px; left:20px;}
</style>
</head>
<body>
<div class="wrap">
<div id="text">simple text<div class="window"></div></div>
</div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 06:07. |