JQuery - Скройте отделение

У меня есть отделение в, формируют что-то как

<form>
<div>
showing some information here
</div>

<div id="idshow" style="display:none">
information here
</div>

</form>

я - информация о населении внутреннее отделение (idshow) на некотором событии нажатия кнопки. что я хочу каждый раз, когда я плохо нажимаю внешнее отделение (idshow), это должно быть, скрываются. точно так же, как я нажимаю на меню затем, меню является дисплеем и когда я нажимаю внешнее меню, это прячется. Мне нужно все с помощью jQuery

13
задан Pankaj 28 May 2010 в 10:40
поделиться

2 ответа

$(document).click(function(event) {
  var target = $( event.target );

  // Check to see if the target is the div.
  if (!target.is( "div#idshow" )) {
    $("div#idshow").hide();
    // Prevent default event -- may not need this, try to see
    return( false );
  }
});
19
ответ дан 1 December 2019 в 21:51
поделиться

Вы можете сделать то, что хотите, следующим образом:

$(document).click(function() {
  $("#idshow").hide();
});
$("#idshow").click(function(e) {
  e.stopPropagation();
});

Что происходит здесь: когда вы щелкаете, событие click поднимается вверх до document, если оно доходит до этого, мы скрываем

. Однако, когда вы щелкаете внутри
, вы можете остановить пузырь от попадания в document, используя event.stopPropagation()... так что .hide() не сработает, коротко и просто :)

.
5
ответ дан 1 December 2019 в 21:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: