Перейти к содержимому


Пользователь месяца
TimurR TimurR 1-й за Август
Очков активности: 726 3 темы, 35 сообщений, 11 баллов репутации
ТОП самых активных за этот месяц
  • Фотография ShowPrint
    #1

    ShowPrint (ShowPrint.ru)
    Очков активности: 207 2 темы, 17 сообщений, 6 баллов репутации

  • Фотография Ixman
    #2

    Ixman (o5cat.ru)
    Очков активности: 90 0 тем, 10 сообщений, 6 баллов репутации

  • Фотография WGN
    #3

    WGN (worldgamenews.com)
    Очков активности: 72 Вне конкурса за определение пользователя месяца

  • Фотография magnet
    #4

    magnet (rbfxdirect.com)
    Очков активности: 67.5 Вне конкурса за определение пользователя месяца

  • Фотография BLIK
    #5

    BLIK
    Очков активности: 33 Вне конкурса за определение пользователя месяца

  • Фотография Developer
    #6

    Developer
    Очков активности: 33 2 темы, 16 сообщений, 1 балл репутации

  • Фотография AnnaYa
    #7

    AnnaYa (topbase.ru)
    Очков активности: 33 2 темы, 5 сообщений, 2 балла репутации

  • Фотография Алексей111
    #8

    Алексей111
    Очков активности: 28.5 5 тем, 4 сообщения, 1 балл репутации

  • Фотография TimurR
    #9

    TimurR
    Очков активности: 27 Вне конкурса за определение пользователя месяца

  • Фотография fedornabilkin
    #10

    fedornabilkin (zaka4ano.ru)
    Очков активности: 24 0 тем, 4 сообщения, 4 балла репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 19.11.2017
  • Яндекс выдача: 24.09.2018
Топ 5 участников по репутации


Скрытие блока при клике вне его области JavaScript

#1 Avin

Avin
  • Неактивные
  • 82 сообщений
  • Репутация: 1
0

Отправлено 05 June 2012 - 20:12

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

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

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

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

#2 c0ns0l3

c0ns0l3
  • Неактивные
  • 264 сообщений
  • Репутация: 49

Отправлено 06 June 2012 - 18:38

Сделай событие на клик в body или html
  • 0

#3 Avin

Avin
    Topic Starter
  • Неактивные
  • 82 сообщений
  • Репутация: 1

Отправлено 06 June 2012 - 20:45

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

Подскажите, пожалуйста.
  • 0

#4 c0ns0l3

c0ns0l3
  • Неактивные
  • 264 сообщений
  • Репутация: 49

Отправлено 06 June 2012 - 20:50

Ну так же само идешь только к тэгу body

document.getElementsByTagName('body')

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

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

Единственное что, тебе прийдется еще проверить, что б у event.target небыл твой елемент для скрытия который, и является ли он сейчас видимым.
  • 0

#5 Symphony

Symphony
  • Неактивные
  • 636 сообщений
  • Репутация: 54

Отправлено 07 June 2012 - 02:59

аааа...точно, если сайт средней сложности, чего jq не цепляешь? Ускоришь же работу.
  • 0


#6 c0ns0l3

c0ns0l3
  • Неактивные
  • 264 сообщений
  • Репутация: 49

Отправлено 07 June 2012 - 05:50

Avin, вообще погуглился.. на jQuery есть даже плагин оказывается на clickoutside... работает по аналогии
document.click.event.target!=this - так что я где то правильно начал рассуждать :)
  • 0

#7 Symphony

Symphony
  • Неактивные
  • 636 сообщений
  • Репутация: 54

Отправлено 07 June 2012 - 09:15

Думаю, там и без плагинов jq можно обойтись


  • 0


#8 Avin

Avin
    Topic Starter
  • Неактивные
  • 82 сообщений
  • Репутация: 1

Отправлено 07 June 2012 - 21:27

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

попробую сделать, по результату отпишусь, не закрывайте пока тему :)
  • 0

#9 by-gari

by-gari
  • Неактивные
  • 12 сообщений
  • Репутация: 0

Отправлено 08 June 2012 - 12:46

Если хочется изучить все досконально тебе сюда. Есть правда и чушь детская но посмотреть советую.
  • 0

#10 Symphony

Symphony
  • Неактивные
  • 636 сообщений
  • Репутация: 54

Отправлено 08 June 2012 - 12:59

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

на этой странице http://goo.gl/DXpcS читаю комментарий.

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

Что это было?
  • 0


robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru