Javascript.RU

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

Выбрать все элементы кроме одного
Всем привет! Задача такова: на сайте есть кнопка логина, при нажатии всплывает окно. Необходимо, чтобы при нажатии на любую область экрана, кроме данного дива, окно закрывалось:

$(document).ready(function(){

$('#login').click(function(){
$('.login-form').toggle();
});

$('*').not('a#login').not('.login-form').click(function(){
$('.login-form').hide();
});

});

Ничего не выходит.
Ответить с цитированием
  #2 (permalink)  
Старый 20.07.2011, 23:37
Профессор
Отправить личное сообщение для ваый Посмотреть профиль Найти все сообщения от ваый
 
Регистрация: 29.06.2011
Сообщений: 445

$('*') - ооо... на странице обычно очень много элементов, вешать на них на все события?!.. лучше уж как-то так:
<style>
.popup {
    padding: 5px;
    height: 100px;
    width: 100px;
    background-color: #DCDCDC;
    border: 1px #ACACAC solid;
}
.popup span {
    padding: 4px;
    border: 1px #AAA solid;
    background-color: gray;
}
</style>
<div class="popup">This is <span>popup</span></div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>
$(function() {
    var over = false;
    $('.popup').mouseenter(function() {
        over = true;
    })
    .mouseleave(function() {
        over = false;
    });
    $(document).click(function(e) {
        if (!over) {
            $('.popup').hide();
            $(this).unbind(e);
        }
    });
});
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 20.07.2011, 23:42
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Обычно это делается так: помимо основного блока, содержащего окно, есть еще блок-подложка, лежащий под ним и растянутый на 100% по высоте и ширине. Вот ему и нужно onclick ставить.
Ответить с цитированием
  #4 (permalink)  
Старый 21.07.2011, 09:23
Аватар для katsgeorgeek
Интересующийся
Отправить личное сообщение для katsgeorgeek Посмотреть профиль Найти все сообщения от katsgeorgeek
 
Регистрация: 20.07.2011
Сообщений: 10

спасибо
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу открыжить все чекбоксы нажатием одного nenastiy Events/DOM/Window 11 23.05.2010 17:50
Выбрать все элементы кроме $(this) shustrikk jQuery 2 13.03.2010 14:17
Получить все элементы YISHIMITSY Events/DOM/Window 6 19.02.2010 15:44
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37
Как удалить все пустые элементы UL smashercosmo Events/DOM/Window 13 25.02.2009 09:03