Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.04.2015, 23:22
Интересующийся
Отправить личное сообщение для nmlgko Посмотреть профиль Найти все сообщения от nmlgko
 
Регистрация: 29.04.2015
Сообщений: 11

скрыть/показать блок по клику
здравствуйте!
помогите, пожалуйста, начинающему

есть код

<body>
    <h1>vfvfvfvf</h1>
    <div class="filter-box">
      <div class="hidden">
        <strong class="title">rrrrr</strong>
        <div class="checkbox">
          <ul>
            <li>111</li>
            <li>222</li>
            <li>333</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >qqqqq</strong>
        <div class="checkbox">
          <ul>
            <li>456</li>
            <li>789</li>
            <li>123</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >ffffff</strong>
        <div class="checkbox">
          <ul>
            <li>147</li>
            <li>2258</li>
            <li>36598</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >ssssss</strong>
        <div class="checkbox">
          <ul>
            <li>dddd111</li>
            <li>222dddd</li>
            <li>333aaaa</li>
          </ul>
        </div>
      </div>
    </div>


Задача: по клику на <strong class="title" >ssssss</strong> необходимо свернуть/показать <div class="checkbox">

$(document).ready(function(){
$(".hidden").click(function(){
  $('.checkbox', this).toggle();
});
});


Этот скрипт сворачивает, но не только по клику на title, а еще и по клику на checkbox. Но так не устраивает. Как решить задачу?
Ответить с цитированием
  #2 (permalink)  
Старый 29.04.2015, 23:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

nmlgko,
так и ставьте клик на
Сообщение от nmlgko
class="title"
что мешает?
Ответить с цитированием
  #3 (permalink)  
Старый 01.05.2015, 21:46
Интересующийся
Отправить личное сообщение для nmlgko Посмотреть профиль Найти все сообщения от nmlgko
 
Регистрация: 29.04.2015
Сообщений: 11

а не работает! ))
решили вопрос вот так

$(".title").click(function(){
  $(this).next('.checkbox')
            .toggle();
});
Ответить с цитированием
  #4 (permalink)  
Старый 02.05.2015, 00:21
Аватар для Slup
Интересующийся
Отправить личное сообщение для Slup Посмотреть профиль Найти все сообщения от Slup
 
Регистрация: 01.05.2015
Сообщений: 10

Тоже самое другими словами)
$('.title').click(function(e){
		  $(e.target).next().toggle();
	  });
Ответить с цитированием
  #5 (permalink)  
Старый 03.05.2015, 14:02
Интересующийся
Отправить личное сообщение для nmlgko Посмотреть профиль Найти все сообщения от nmlgko
 
Регистрация: 29.04.2015
Сообщений: 11

спасибо!
Ответить с цитированием
  #6 (permalink)  
Старый 03.05.2015, 15:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

nmlgko,
открывашка 216 делегирование
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .checkbox  {
    display: none;

  }

  .title {
     cursor: pointer;
  }

  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
   $(function()
     {
       $(".hidden").on("click", ".title", function(event)
         {
           $('.checkbox', event.delegateTarget).toggle();
         }
       );
     }
   );
  </script>
</head>

  <body>
    <h1>vfvfvfvf</h1>
    <div class="filter-box">
      <div class="hidden">
        <strong class="title">rrrrr</strong>
        <div class="checkbox">
          <ul>
            <li>111</li>
            <li>222</li>
            <li>333</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >qqqqq</strong>
        <div class="checkbox">
          <ul>
            <li>456</li>
            <li>789</li>
            <li>123</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >ffffff</strong>
        <div class="checkbox">
          <ul>
            <li>147</li>
            <li>2258</li>
            <li>36598</li>
          </ul>
        </div>
      </div>
      <div class="hidden">
        <strong class="title" >ssssss</strong>
        <div class="checkbox">
          <ul>
            <li>dddd111</li>
            <li>222dddd</li>
            <li>333aaaa</li>
          </ul>
        </div>
      </div>
    </div>



</body>

</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрыть/показать блок по клику mr__brainwash jQuery 1 06.09.2014 23:58
Правильно ли реализовано скрыть/показать блок OziJ jQuery 1 09.01.2014 16:08
Скрыть блок по клику Alex2395 Общие вопросы Javascript 2 09.09.2013 07:16
Скрыть/показать блок в зависимости от radio MBmusic Элементы интерфейса 10 08.05.2013 17:23
вставка текста в блок по клику Titanic jQuery 4 12.02.2011 17:35