Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.02.2011, 16:13
Интересующийся
Отправить личное сообщение для yupee Посмотреть профиль Найти все сообщения от yupee
 
Регистрация: 27.01.2011
Сообщений: 21

Помогите с динамическим меню!
Недавно начал пробывать себя в программировании, пишу первый сайт, столкнулся с такой проблемой с динамическим меню: охота сделать чтобы при наведении на "кнопку" выпадало меню через полсекунды, но если курсор за эти полсекунды убирают, то меню не выпапло....дык вот, с первым я справился с помощью setTimeout, а вот как отложить setTimeout не могу придумать мучался с clearTimeout но ниче толком не получилось...подскажите пожалуйста как победить этого зверя
Заранее спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 06.02.2011, 17:13
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

а ты посмотри сколько раз setTimeout у тебя в очередь становиться за время что курсор находиться над кнопкой. введи флаг если раз он стал в очередь -то больше не ставить
Ответить с цитированием
  #3 (permalink)  
Старый 06.02.2011, 17:26
Интересующийся
Отправить личное сообщение для yupee Посмотреть профиль Найти все сообщения от yupee
 
Регистрация: 27.01.2011
Сообщений: 21

Спасибо, понял в чем проблема..
Сообщение от dmitriymar
введи флаг если раз он стал в очередь -то больше не ставить
а как это сделать??
Ответить с цитированием
  #4 (permalink)  
Старый 06.02.2011, 19:52
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

у тебя есть событие -онмаусовер
функция вызываемые при событии
var flag=0;
function name()
{
if  (flag!=1){
 setTimeout(.....);
 flag=1;
}

ну а когда выплниться сворачивание меню флаг обнулишь
Ответить с цитированием
  #5 (permalink)  
Старый 07.02.2011, 08:58
Интересующийся
Отправить личное сообщение для yupee Посмотреть профиль Найти все сообщения от yupee
 
Регистрация: 27.01.2011
Сообщений: 21

БОльшое спасибо!!))
Ответить с цитированием
  #6 (permalink)  
Старый 11.02.2011, 21:05
Интересующийся
Отправить личное сообщение для yupee Посмотреть профиль Найти все сообщения от yupee
 
Регистрация: 27.01.2011
Сообщений: 21

Помогите с с динамическим меню)) еще раз)) вобщем проблема такая: работает только первые 2 строчки (после case '1'). при a=2 также ниче не работает((( не пойму в чем дело...$('th#submenu1').mouseover(...) пробывал выносить из условия все равно не работает...помогите пожалуйста!! есть подозрение что ниже этого условия ни одно событие не работает....не знаю в чем проблема
$(document).mousemove( function(){		
switch(a) {
case '1':
$('th#1').mouseover(function(){showSubmenu;});
$('th#1').mouseout(function(){hideSubmenu=setTimeout     ("$('div.submenu#sub1').hide();flagSub=0;",100)});
$('th#submenu1').mouseover(function(){clearTimeout(hideSubmenu);
 submenu.css('background-color','red');
															  })
break;
								
case '2':
$('th#2').mouseover(function(){showSubmenu;})
$('th#2').mouseout(function(){hideSubmenu=setTimeout("$('div.submenu#sub2').hide();flagSub=0",100)})
						break;
						}
							});
});
Ответить с цитированием
  #7 (permalink)  
Старый 11.02.2011, 22:16
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

$('th#1').mouseover(function(){showSubmenu;});
showSubmenu что это вызов какойто доп функции? если да(джиквери не знаю) возможно должно выглядеть как
showSubmenu()?
Ответить с цитированием
  #8 (permalink)  
Старый 11.02.2011, 22:23
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

$(document).mousemove( function(){     
switch(a) {
case '1':
$('th#1').mouseover(function(){showSubmenu;});
$('th#1').mouseout(function(){hideSubmenu=setTimeout     ("$('div.submenu#sub1').hide();flagSub=0;",100)});
$('th#submenu1').mouseover(function(){clearTimeout(hideSubmenu);
 submenu.css('background-color','red');
                                                         })-'это switch(a) закрывается? ну и почему должен второй блок сработать?
break;
                                 
case '2':
$('th#2').mouseover(function(){showSubmenu;})
$('th#2').mouseout(function(){hideSubmenu=setTimeout("$('div.submenu#sub2').hide();flagSub=0",100)})
                        break;
                        }-закрытие switch(a)
                            });-закрытие $(document).mousemove( function(){ 
})-лишняя по идее;

Последний раз редактировалось dmitriymar, 11.02.2011 в 22:35.
Ответить с цитированием
  #9 (permalink)  
Старый 11.02.2011, 22:44
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

$('th#submenu1').mouseover(function(){clearTimeout (hideSubmenu);
оригинально очищать очередь-если функция выполняется уже то в очереди её уже не будет

Последний раз редактировалось dmitriymar, 12.02.2011 в 00:08.
Ответить с цитированием
  #10 (permalink)  
Старый 12.02.2011, 13:03
Интересующийся
Отправить личное сообщение для yupee Посмотреть профиль Найти все сообщения от yupee
 
Регистрация: 27.01.2011
Сообщений: 21

dmitriymar не знаю чтобы делал без Вас!! спасибо что возитесь со мной
showSubmenu- переменная объявленная ранее, в ней написана SetTimeout(...,500) (также как и hideSubmenu в этом коде)

$(document).mousemove( function(){		
switch(a) {
case '1':
$('th#1').mouseover(function(){showSubmenu;});
$('th#1').mouseout(function(){hideSubmenu=setTimeout     ("$('div.submenu#sub1').hide();flagSub=0;",100)}); '-если я правельно понял как работает эта функция то здесь она ставится в очередь, пробывал ставить 1секунду, толку мало
$('th#submenu1').mouseover(function(){
clearTimeout(hideSubmenu);               -а при наведении очищается очередь
submenu.css('background-color','red');
})  - здесь закрывается анонимная функция после  $('th#submenu1').mouseover(function(){
break;
								
case '2':
$('th#2').mouseover(function(){showSubmenu;})
$('th#2').mouseout(function(){hideSubmenu=setTimeout("$('div.submenu#sub2').hide();flagSub=0",100)})
						break;
						}
							});
});--точно! лишняя, захватил нечайно
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с выпадающим меню ... 03SPS12 (X)HTML/CSS 5 22.12.2010 09:50
Помогите с динамическим меню из изображений dkarty Элементы интерфейса 4 09.06.2010 13:27
Помогите настроить скрипт раскрывающегося меню melomanfm Работа 6 10.08.2009 01:21
помогите с меню Ribt Общие вопросы Javascript 0 20.09.2008 08:11
Помогите сделать простое меню debugger Элементы интерфейса 1 09.09.2008 23:14