Javascript.RU

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

Правильный переход с live на on для события mouseover
Здравствуйте.
У меня есть функция для всплывающего div блока:
( function(c) { 
	c.fn.setPopup = function(e) { 
		var d = c(this); 
 
		e = ( e === undefined ) ? 5000 : e; 
		// При наведении мышки останавливаем блок div, чтобы он не спрятался. 
		d.data( 'hover', false).data( 'time', e ).find( 'div' ).live( 'mouseover', function() { 
			d.data ( 'hover', true ); 
			c(this).show(); 
			clearTimeout( c(this).data( 'timeout' ) ); 
			// Если убрали мышку с блока div. 
		} ).live( 'mouseout', function() { 
			d.data( 'hover', false ); 
			var f = setTimeout( function() { 
				d.find( 'div:last' ).remove(); 
			}, 
			d.data( 'time' ) ); 
			c(this).data( 'timeout', f ); 
		} ); 
		d.find( 'div' ).find( 'a:first' ).click( function(f) { 
			c( f.target ).parent( 'div' ).remove(); 
			return false; 
		} ); 
		return d 
	}; 
} 
)(jQuery);

суть в том, что при наведении на блок мышкой, таймер перехода должен остановиться, на старой версии jquery скрипт работает, но в новой версии "live" уже устарел и скрипт не правильно работает(выдает ошибку), смена "live" на "on" не выводит ошибку, но и не работает остановка таймера при наведении на блок.
Как в данном случае можно исправить работу скрипта?
Ответить с цитированием
  #2 (permalink)  
Старый 10.05.2023, 20:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Сообщение от Zdravko
Как в данном случае можно исправить работу скрипта?
сделайте минимальный рабочий пример(html, css, js) со старой версией
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #3 (permalink)  
Старый 11.05.2023, 12:57
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от Zdravko
d.data( 'hover', false).data( 'time', e ).find( 'div' ).live( 'mouseover', function() {...})
Вот так, вроде, менять нужно

d.data( 'hover', false).data( 'time', e ).on('mouseover', 'div',  function() {...})
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка события focus для input:text Юрий Шу jQuery 8 02.06.2010 15:57
Как отловить для всего документа переход фокуса между элементами. Nominus umbra Общие вопросы Javascript 2 28.04.2010 02:33
эмуляция события click для элемента select Polo Events/DOM/Window 4 16.12.2009 13:29
Для события onCLick получить индекс строки и объект грида. progi2007 ExtJS 4 05.08.2009 11:31
События в javascript для формы. woo_hoo Общие вопросы Javascript 5 17.07.2008 19:13