Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Всплывающий блок 
:(
    Опции темы
Alexsender
  Дата 8.12.2009, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.12.2009

Репутация: нет
Всего: нет



Помогите пожалуйста с проблемкой. Нашел в сети вот этот скрипт. Работает jQuery. 

HTML
<A id=toggler href="#">Линк</A>
<DIV id="ttttt" class="no-display drop-down-block">Всплывающий блок</DIV>

HTML
<script type=text/javascript src="jquery-1.3.2.min.js"></SCRIPT>

<script type=text/javascript>
(function($) {
    $.fn.dropDownBlock = function(block, options) {
        var defaults = {
            speed: 'fast',
            top: $(this).height(),
            left: 0
        },
        opts    = $.extend(defaults, options),
        toggler = $(this),
        block    = $(block);
        toggler.css({'outline': 'none'})

        toggler.click(function(e) {
            e.preventDefault();
            $(block).css({
             'position'    : 'absolute',
             'top'        : (toggler.offset().top + opts['top']) + 'px',
             'left'        : (toggler.offset().left + opts['left']) + 'px'
           });
           if($(block).is(':visible')) $(block).fadeOut(opts['speed']);
           else $(block).fadeIn(opts['speed']);
           this.focus();
        });
        toggler.blur(function() {
            $(block).fadeOut(opts['speed']);
        });
    };
})(jQuery);

$('#toggler').dropDownBlock($('#ttttt'));
</SCRIPT>


Вопрос: как сделать так, чтобы блок исчезал только при клике вне поля блока. То есть, когда мы запускаем блок, то при клике в любом месте страницы (в том числе и на блоке) блок исчезает, а нужно , чтобы он исчезал только когда мы кликаем не по самому блоку.
PM MAIL   Вверх
brother79
Дата 8.12.2009, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 18.8.2009

Репутация: 1
Всего: 6



Цитата(Alexsender @  8.12.2009,  10:20 Найти цитируемый пост)
toggler.click(function(e) {


Поставь сюда условие по координатам например.



--------------------
PM MAIL WWW   Вверх
Alexsender
Дата 8.12.2009, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 8.12.2009

Репутация: нет
Всего: нет



Цитата(brother79 @ 8.12.2009,  11:41)
Поставь сюда условие по координатам например.

Нельзя. Блок всплывает рядом с линком. Здесь нет точных координат.
PM MAIL   Вверх
IDVsbruck
Дата 8.12.2009, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 4
Всего: 22



Например, при покидании блока мышкой (mouseleave) или при открытии блока, но до попадания в него мышью, назначаем событие странице (body) onclick, по которому будет сворачиваться блок. При попадании мышки в блок отменяем клик для документа.
Примерно по такому сценарию я делал пользовательский селект для автоматического сворачивания выпадающего списка селекта при его покидании.
PM MAIL   Вверх
EmilRegis
Дата 8.12.2009, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 306
Регистрация: 21.9.2007

Репутация: нет
Всего: 4



на боди повесить событие исчезновения блока и проверять в нём 
Код

if (flag) {блок исчезает; flag = false}

на блок повесить 2 события: onmouseover и onmouseleave и в них менять значение flag'а
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0420 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.