Javascript.RU

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

Изменить onclick на hover
Здравствуйте. Прошу подсказки у знающих. Есть скрипт:

$(function() {
$(document).mouseup(function(e) {
if($(e.target).parent("a.signInBox").length == 0) {
$(".signInBox").removeClass("active");
$("#signInMenu").hide();
}
}),
$(".signInBox").click(
function(event) {
event.preventDefault();
$("#signInMenu").toggle();
$(this).toggleClass("active");
}

),
$("#signInMenu").mouseup(function() {
return false
})

});

Здесь по клику открывается форма входа на сайт. Мне нужно, что бы она открывалась при наведении. Меняла click на hover, работает, но сам элемент не активен. То есть при ховере сама форма появляется но зайти через эту форму я не могу, так как она сразу исчезает. Подскажите что еще добавить в код...
Ответить с цитированием
  #2 (permalink)  
Старый 12.02.2014, 16:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

nat,
hover и элементы form
Ответить с цитированием
  #3 (permalink)  
Старый 12.02.2014, 16:44
nat nat вне форума
Новичок на форуме
Отправить личное сообщение для nat Посмотреть профиль Найти все сообщения от nat
 
Регистрация: 12.02.2014
Сообщений: 9

Спасибо, сделать элемент активным получилось, правда теперь блок не убирается когда отводишь курсор, пробовала mouseleave, но не выходит..
Ответить с цитированием
  #4 (permalink)  
Старый 12.02.2014, 16:46
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

nat,
сделайте макет ... не все телепаты
Ответить с цитированием
  #5 (permalink)  
Старый 12.02.2014, 16:56
nat nat вне форума
Новичок на форуме
Отправить личное сообщение для nat Посмотреть профиль Найти все сообщения от nat
 
Регистрация: 12.02.2014
Сообщений: 9

$(function() {
$(document).mouseup(function(e) {
if($(e.target).parent("a.signInBox").length == 0) {
$(".signInBox").removeClass("active");
$("#signInMenu").hide();
}
}),
$(".signInBox").mouseenter(
function(event) {
event.preventDefault();
$("#signInMenu").toggle();
$(this).toggleClass("active");
}),
$("#signInMenu").mouseup(function() {
return false
})

});
Ответить с цитированием
  #6 (permalink)  
Старый 12.02.2014, 16:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

nat,
макет это не только код но и html
Ответить с цитированием
  #7 (permalink)  
Старый 12.02.2014, 17:01
nat nat вне форума
Новичок на форуме
Отправить личное сообщение для nat Посмотреть профиль Найти все сообщения от nat
 
Регистрация: 12.02.2014
Сообщений: 9

<div class="relative">
	
    <div class="signInBox ml5"><div class="li-menu"><i class="icon-user"></i>Вход</div></div>
     
	 <div id="signInMenu" class="signInMenu">
  
     
	 <div class="inline mb10 pt10 pb10">
                                            
 </div>
   
<form accept-charset="UTF-8" id="user-login-form" method="post" action="/node?destination=node">
  
        <div class="z10">
           <label class="inputLabel" for="username_email">Логин или емайл:</label>
              <input type="text" name="name" id="edit-name">
              <label class="inputLabel" for="email">Пароль:</label>
                <input type="password" name="pass" id="edit-pass">
                <input type="hidden" value="" name="form_build_id">
                <input type="hidden" value="user_login_block" name="form_id">
              
				  
				<div class="sb-reg">    
                     <input type="submit" class="form-submit" value="Войти" name="op" id="edit-submit">
					 <a href="/user/password">Забыли пароль?</a>   
                </div>
             </div> 
 

	
</form>
             </div>
</div>
     
  
<script type="text/javascript">

$(function() {
$(document).mouseup(function(e) {
if($(e.target).parent("a.signInBox").length == 0) {
$(".signInBox").removeClass("active");
$("#signInMenu").hide();
}
}),
$(".signInBox").mouseenter(
function(event) {
event.preventDefault();
$("#signInMenu").toggle();
$(this).toggleClass("active");
}),
$("#signInMenu").mouseup(function() {
return false
})
})

});
</script>
Ответить с цитированием
  #8 (permalink)  
Старый 12.02.2014, 17:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

nat,
то есть css прячем ? и в 56 строке что валяется?
Ответить с цитированием
  #9 (permalink)  
Старый 12.02.2014, 17:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

nat,
и что не так работает?
<!DOCTYPE HTML>

<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <style type="text/css">
        .signInMenu {
            display: none;
        }
        .li-menu {
            background-color: #FF00FF;
        }
    </style>
</head>

<body>
    <div class="relative">

        <div class="signInBox ml5">
            <div class="li-menu"><i class="icon-user"></i>Вход</div>
        </div>

        <div id="signInMenu" class="signInMenu">


            <div class="inline mb10 pt10 pb10">

            </div>

            <form accept-charset="UTF-8" id="user-login-form" method="post" action="/node?destination=node">

                <div class="z10">
                    <label class="inputLabel" for="username_email">Логин или емайл:</label>
                    <input type="text" name="name" id="edit-name">
                    <label class="inputLabel" for="email">Пароль:</label>
                    <input type="password" name="pass" id="edit-pass">
                    <input type="hidden" value="" name="form_build_id">
                    <input type="hidden" value="user_login_block" name="form_id">


                    <div class="sb-reg">
                        <input type="submit" class="form-submit" value="Войти" name="op" id="edit-submit">
                        <a href="/user/password">Забыли пароль?</a>
                    </div>
                </div>



            </form>
        </div>
    </div>


    <script type="text/javascript">
        $(function () {
            $(".signInBox").mouseenter(
                function (event) {
                    event.preventDefault();
                    $("#signInMenu").toggle();
                    $(this).toggleClass("active");
                });

            $("#signInMenu").mouseleave(function (event) {
                if ($(event.relatedTarget).parents(".relative").length == 0) $(this).toggle()

            });

        })
    </script>

</body>

</html>

Последний раз редактировалось рони, 12.02.2014 в 18:13.
Ответить с цитированием
  #10 (permalink)  
Старый 12.02.2014, 17:40
nat nat вне форума
Новичок на форуме
Отправить личное сообщение для nat Посмотреть профиль Найти все сообщения от nat
 
Регистрация: 12.02.2014
Сообщений: 9

да, css прячем. в 56строке убрала, то так скопировала.
Работает все, но вот навела на ВХОД, выпал блок, навела еще раз на Вход, он пропал. а вот если просто убираю курсор с блока, он не пропадает, только то клику может исчезнуть
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переписать hover на onclick kraska Общие вопросы Javascript 2 21.09.2013 20:57
Изменение свойства :hover по клику дива BoB jQuery 6 21.10.2012 13:36
Установка цвета через функцию .css() сбрасывает цвет для :hover xintrea jQuery 4 18.08.2012 15:38
Изменение стиля родительского элемента при :hover дочернего lanzs Элементы интерфейса 2 16.10.2010 13:28
Изменить текст под изображением на котором событие onclick GodRa Общие вопросы Javascript 2 12.11.2008 23:15