Показать сообщение отдельно
  #4 (permalink)  
Старый 27.07.2014, 18:06
Новичок на форуме
Отправить личное сообщение для updaite Посмотреть профиль Найти все сообщения от updaite
 
Регистрация: 26.07.2014
Сообщений: 3

Реализовал вот так.

<a id="new-ref" href="#">текст</a>
<div id="div-test">
 <input id="login" type="text">
 <input id="password" type="text">
</div>


Код:
#div-test{
display:none;
width:400px;
border:1px solid #000;
padding:20px;
}
$(function(){
    $('#new-ref').mouseenter(function(){ // Навели на ссылку?
      $( "#div-test" ).show(); // Показываем блок
    });

    $("#new-ref").mouseleave(function(event ){ // курсор ушел с ссылки?
        event = event || window.event   // Не знаю что тут происходит
        var relTarg = event.relatedTarget || event.toElement   // Определяем куда курсор ушел
        if (relTarg.id != 'div-test')  
        {
            if ($("input[id='login']").val().length != 0) return; // есть текст в input? -> return
            $( "#div-test" ).hide();  // Скрываем блок
        }
     });
    
   $("#div-test").mouseleave(function(event ){  // курсор ушел с блока?
        event = event || window.event  // Не знаю что тут происходит
        var relTarg = event.relatedTarget || event.toElement // Определяем куда курсор ушел
        if (relTarg.id != 'new-ref')
          {
             if ($("input[id='login']").val().length != 0) return; // есть текст в input? -> return
             $( "#div-test" ).hide();  // Скрываем блок
          }
   });
   
    $(document).click(function(e){ // Функция скрывает элемент если произошёл клик в не поля #div-test
            if ($(e.target).closest('#div-test').length) return;  // Не знаю что тут происходит
            $('#div-test').hide(); // Скрываем блок
            e.stopPropagation(); // Не знаю что тут происходит
        });
    
});


Насколько это правильно?

Последний раз редактировалось updaite, 27.07.2014 в 22:07.
Ответить с цитированием