X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Скрытие блока при клике вне его области JavaScript
Avin
Avin
Topic Starter сообщение 5.6.2012, 21:12; Ответить: Avin
Сообщение #1


Добрый день, уважаемые форумчане!

Прошу Вашей помощи в следующей проблеме.

Имеется блок ракрывающийся и скывающийся по клику

Onclick="toggle_visibility(my_div);"


Сама функция ракрывающая и скрывающая блок

function toggle_visibility(id)
    {
        var e = document.getElementById(id);

        if(e.style.display == 'block') {
            e.style.display = 'none';
    }
        else {
            e.style.display = 'block';
    }
    }


Все отлично работает, когда кликаешь по ссылке у которой прописано Onclick="toggle_visibility('my_div');"

А я бы хотел, чтобы блок так же скрывался (только скрывался) если произведен клик вне моего "my_div"

Уважаемые знатоки, прошу Вашей помощи.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
c0ns0l3
c0ns0l3
сообщение 6.6.2012, 19:38; Ответить: c0ns0l3
Сообщение #2


Сделай событие на клик в body или html
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Avin
Avin
Topic Starter сообщение 6.6.2012, 21:45; Ответить: Avin
Сообщение #3


А как это сделать? какой функцией? как обработать ее?

Подскажите, пожалуйста.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
c0ns0l3
c0ns0l3
сообщение 6.6.2012, 21:50; Ответить: c0ns0l3
Сообщение #4


Ну так же само идешь только к тэгу body
document.getElementsByTagName('body')

Цепляешь к нему ф-цию на клик. Которая скроет елемент твой.

Я могу написать исходник только на jQuery, вспоминать сейчас DOM в основе JS - времени нету.

Единственное что, тебе прийдется еще проверить, что б у event.target небыл твой елемент для скрытия который, и является ли он сейчас видимым.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Symphony
Symphony
сообщение 7.6.2012, 3:59; Ответить: Symphony
Сообщение #5


аааа...точно, если сайт средней сложности, чего jq не цепляешь? Ускоришь же работу.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
c0ns0l3
c0ns0l3
сообщение 7.6.2012, 6:50; Ответить: c0ns0l3
Сообщение #6


[member=Avin], вообще погуглился.. на jQuery есть даже плагин оказывается на clickoutside... работает по аналогии
document.click.event.target!=this - так что я где то правильно начал рассуждать :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Symphony
Symphony
сообщение 7.6.2012, 10:15; Ответить: Symphony
Сообщение #7


Думаю, там и без плагинов jq можно обойтись
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Avin
Avin
Topic Starter сообщение 7.6.2012, 22:27; Ответить: Avin
Сообщение #8


Спасибо за подробные ответы!!!!

попробую сделать, по результату отпишусь, не закрывайте пока тему :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
by-gari
by-gari
сообщение 8.6.2012, 13:46; Ответить: by-gari
Сообщение #9


Если хочется изучить все досконально тебе сюда. Есть правда и чушь детская но посмотреть советую.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Symphony
Symphony
сообщение 8.6.2012, 13:59; Ответить: Symphony
Сообщение #10


зашел на сайт который дал товарищ, что постов выше.

на этой странице http://goo.gl/DXpcS читаю комментарий.
Мне 66 лет. Высшее получил когда персоналок в помине не было. Друзей искать не привык, да и поздновато. Могли бы сразу написать, что для регистрации нужна компания. С приветом. Лев.

Что это было?

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ.
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п
7 stu999 1759 31.3.2024, 11:19
автор: stu999
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1246 24.11.2023, 14:46
автор: alexey
Открытая тема (нет новых ответов) Размещу ваши объявления о подработке в Москве или московской области в "ВКонтакте" и в "Телеграм"
1 Tia2 984 5.11.2023, 10:18
автор: maxmer
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
56 qpPeW 44948 19.7.2023, 10:03
автор: qpPeW
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыТы умеешь лить траф с FB? Мы монетизируем его через Телеграм на ИНДИИ.
0 Sirbet 511 14.2.2023, 21:39
автор: Sirbet


 



RSS Текстовая версия Сейчас: 26.4.2024, 2:07
Дизайн