Javascript.RU

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

Не могу связать два события для разных элементов.
Здравствуйте.Возникла проблема.У меня при наведении курсора на ссылку,рядом появляется div,он должен висеть,до тех пор пока курсор висит на ссылке,либо в пределах дива.Не могу понять как связать событие для ссылки с событием для блока.Спасибо)
<script>
$(document).on('mouseenter', '.link', function(){
$('#oldid').clone().attr('id', 'newid').addClass('clone').appendTo('#conteiner');
$('#newid').css({'left': event.pageX+5,'top': event.pageY+5});
})
.on('mouseleave', '.link', function(){
$('#newid').remove();
});
</script>
Пока только так
Ответить с цитированием
  #2 (permalink)  
Старый 07.03.2013, 15:51
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А что делает этот код? И чего не делает? И нужно обернуть его в
[js]..[/js]
Ответить с цитированием
  #3 (permalink)  
Старый 07.03.2013, 16:00
Новичок на форуме
Отправить личное сообщение для nono Посмотреть профиль Найти все сообщения от nono
 
Регистрация: 07.03.2013
Сообщений: 4

Сообщение от danik.js Посмотреть сообщение
А что делает этот код? И чего не делает? И нужно обернуть его в
[js]..[/js]
при наведении курсора на ссылку он клонирует сужествующий div и выводит рядом со ссылкой клон,а если курсор отвести, удаляет его.А нужно чтоб div сохранялся,если переместить курсор со ссылки на него.То есть сохранять клон только если курсор находится либо на ссылке,вызвавшей его,либо на самом клоне.
Ответить с цитированием
  #4 (permalink)  
Старый 07.03.2013, 16:34
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

"E=nono]Здравствуйте.Возникла проблема.У меня при наведении курсора на ссылку,рядом появляется div,он должен висеть,до тех пор пока курсор висит на ссылке,либо в пределах дива.Не могу понять как связать событие для ссылки с событием для блока.Спасибо)
[/quote]
<style>
.mouseover {
  display:none;
  position:absolute;
  padding:2px 7px;
  background-color:#61A4DB;
  margin-left:75%;
  margin-top:-3px;
}
span.hover:hover .mouseover {
  padding:7px;
  display:block;
}
span.hover {
  display:inline-block;
  position:relative;
  border:red dashed 1px; /*Чисто для теста расположения div.mouseover*/
  padding:7px;
}
span.hover a{
    background-color:#F1CF1A;
    padding:2px 7px;
}
</style>
<span class=hover><a href="http://javascript.ru/forum/">Тест</a>
  <div class="mouseover">
<pre>
Описание к ссылке
Описание к ссылке
Описание к ссылке
</pre>
  </div>
</span>
"
Ответить с цитированием
  #5 (permalink)  
Старый 07.03.2013, 17:22
Новичок на форуме
Отправить личное сообщение для nono Посмотреть профиль Найти все сообщения от nono
 
Регистрация: 07.03.2013
Сообщений: 4

Спасибо,но это не совсем то что нужно,мне нужна реализация именно на jquery.Как можно сделать так,чтоб .on('mouseleave', link, function(){
$(div).remove();}) не срабатывал если выполняется $(div).mouseenter(...);?
div-клон который появляется рядом
может я неправильно выражаюсь правда.
я хочу сделать перелинковку между вопросами и ответами,как это сделано на некоторых имиджбордах
Ответить с цитированием
  #6 (permalink)  
Старый 07.03.2013, 17:58
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

1) Скрывать див по таймауту, по наведении на див - отменять таймер.
2) По mouseleave проверять event.toElelement - если это наш див, то ничего не делать.
Ответить с цитированием
  #7 (permalink)  
Старый 07.03.2013, 18:29
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от nono
Спасибо,но это не совсем то что нужно,мне нужна реализация именно на jquery.Как можно сделать так,чтоб .on('mouseleave', link, function(){
Реализуйте на jquery, суть демки: чтобы не мучаться со связью событий - обернуть ссылку и div засунуть в конец обертки
отслеживать .mouseenter на обертке, - во что показано
Ответить с цитированием
  #8 (permalink)  
Старый 07.03.2013, 19:21
Новичок на форуме
Отправить личное сообщение для nono Посмотреть профиль Найти все сообщения от nono
 
Регистрация: 07.03.2013
Сообщений: 4

Сообщение от nono Посмотреть сообщение
1) Скрывать див по таймауту, по наведении на див - отменять таймер.
2) По mouseleave проверять event.toElelement - если это наш див, то ничего не делать.
спс. второй пункт правда не понял,но буду разбираться
Ответить с цитированием
  #9 (permalink)  
Старый 07.03.2013, 19:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Это два разных варианта решения задачи.
В функцию-обрабочтик передается объект "событие", у него есть свойство toElement. В случае с mouseleave оно указывает на элемент, на который перешла мышка.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
эмуляция события click для элемента select Polo Events/DOM/Window 4 16.12.2009 13:29
Использование одной функции для элементов с разными ID Ferroks Общие вопросы Javascript 10 11.09.2009 08:51
Для события onCLick получить индекс строки и объект грида. progi2007 ExtJS 4 05.08.2009 11:31
не могу совладать со звуками для Onmouseover и Onmouseclick THER1ON Серверные языки и технологии 7 27.05.2009 21:03
События в javascript для формы. woo_hoo Общие вопросы Javascript 5 17.07.2008 19:13