Помогите с onClick display block

Статус
В этой теме нельзя размещать новые ответы.

th7

Постоялец
Регистрация
21 Апр 2008
Сообщения
119
Реакции
9
Ниже код выпадающего меню при наведении на кнопку.. с помощью display: block; и none выпадает меню(окно)..
Помогите пожалуйста поставить задержку(интервал) появления меню и его исчезания при помощи jquery-1.3.2.min.js, так как наведя на кнопку не успеваешь довести стрелку к меню как оно уже исчезает.
Вот css
HTML:
ul.columns li {	
width: 50px;	
float: right; 
display: block;	
margin: 17px 10px 10px 10px; 
padding: 0;	
position: relative;
}
ul.columns li .info { 	
position: absolute;	
left: -10px; top: -10px;		
margin: 70px 60px 10px -185px;		
width: 310px;	
display: none;	
background: #242424;	
font-size: 1.2em;	
}
ul.columns li:hover .info {display: block;}
Bot Html
HTML:
<!-- Выпадающее меню -->		
<ul class="columns">
    <li>
    	<a href="#"><img src="" alt="" /></a>  - Это кнопка
        <div class="info">  
         сдесь содержание меню
        </div>
    </li>
</ul>
<!-- //Выпадающее меню// -->
Заранее спасибо!
 
event на открытие и закрытие на что ставишь?
 
mouseenter - ставь на li
mouseleave - на div или li (но должен быть флаг на открытие блока, это для li). Ну и закрытие по задержке
 
  • Нравится
Реакции: th7
mouseenter - ставь на li
mouseleave - на div или li (но должен быть флаг на открытие блока, это для li). Ну и закрытие по задержке

К сожалению в Jquary не силен.. Можно реальный пример..
Спасибо за наводку.

Добавлено через 16 минут
mouseenter - ставь на li
mouseleave - на div или li (но должен быть флаг на открытие блока, это для li). Ну и закрытие по задержке

HTML:
$(document).ready(function () {
  $('.columns').mouseenter(function () {
	                $('.info').show();
	            });
	 
	            $('.columns').mouseleave('slow',function () {
	                $('.info').hide();
	            });
	        });

Типа того?

Добавлено через 36 минут
HTML:
$(document).ready(function () {
  $('.columns').mouseenter(function () {
	                $('.info').show('slow');
	            });
	 
	            $('.columns').mouseleave('slow',function () {
	                $('.info').hide('slow');
	            });
	        });

Данный скрипт заработал, но он немного не подходит.
Замедляется само всплывание и закрытие, а мне нужно что б уже всплывшое меню не закрывалось с интервалом например 1-2 секунды

Получается что .show и .hide не подходит? или чтото надо дописать?
 
setInterval и clearInterval на закрытие
Обрыл весь интернет в этих интервалах немного разобрался.
Блин никак не могу понять как прилепить setInterval и clearInterval к этому скрипту. Ничего не выходит.
Помогите кто может!
 
Из доков jquery:

HTML:
$(document).ready(function () {
  $('.columns').mouseenter(function () {
	                $('.info').show('fast'); // или вообще убрать задержку на открытие, убрав этот обработчик
	            });
	            $('.columns').mouseleave(function () {
	                $('.info').hide(100); // число миллисекунд задержки при mouseleave
	            });
	        });
Как-то так, на работоспособность не проверял.
 
$('.info').hide(100); - 100 это скорость анимации скрытия, а не задержка
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху