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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как скрыть элемент(-ы) по клику в любом месте, Сам элемент запускается по клику родител 
:(
    Опции темы
Sinneren
Дата 24.7.2012, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


{YaGoo}
*


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

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



банальный пример - Lightbox, когда кликаем на окружающее его пространство, галерея закрывается. 
сама подсказка(слой/элемент) переключается через toggle().
вот структура,как сделано у меня появление эл-а.
Код

<div onClick="$(this).children().toggle();">
 <div class="tip">элементы</div>
</div>

Если поставить обработчик onclick на body чтобы скрыть все .tip, то показываться не будет вообще, видимо клик по предку как по самому считается, чтоль. Как можно решить проблему?
У самого LB решение слишком мудрёное и мне не понятное
Код

return $('body').on('click', 'a[rel^=lightbox], area[rel^=lightbox]', function(e) {
        _this.start($(e.currentTarget));
        return false;
});

PM MAIL WWW ICQ Skype   Вверх
Aliance
Дата 25.7.2012, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

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



Цитата(Sinneren @  24.7.2012,  14:28 Найти цитируемый пост)
Если поставить обработчик onclick на body чтобы скрыть все .tip, то показываться не будет вообще,

будет, если сделать всё грамотно.

1) Вариант как у LB: повесить событие на все, кроме ссылок относящихся к лайтбоксу. Тогда клик по ссылке будет обрабатываться отдельно, клик по всему остальному закрывать.
2) Отменить всплывание события (подбробнее в статье в моей подписи).
3) Сделать промежуточный слой с затемнением и ловить клик по нему.
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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