Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 02.06.2021
Сообщений: 4

Для каждого элемента вызвать соседний блок

12.09.2021, 22:19. Показов 503. Ответов 4

Студворк — интернет-сервис помощи студентам
Помогите написать скрипт
Настранице формируется много <div class="card">
HTML5
1
2
3
4
<div class="card">
 <button   class="btn" >Кнопка</button>
<div    class="visually-hidden></div>
</div>
Как сделать скрипт чтобы при нажатии на каждую Кнопку открывался только его скрытый блок
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.09.2021, 22:19
Ответы с готовыми решениями:

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

Динамическое добавление выпадающего списка и значения в блок для каждого элемента
Добрый день. &lt;html&gt; &lt;head&gt; &lt;script src=&quot;https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js&quot;&gt;&lt;/script&gt; &lt;/head&gt; ...

После каждого четного элемента массива вставить два элемента с тем же значением (построить блок схему)
program zadacha; var x: array of integer; k,m,q,i,j,n:integer; begin randomize; repeat write('введите размериность...

4
Эксперт JS
 Аватар для DrType
6553 / 3624 / 1075
Регистрация: 07.09.2019
Сообщений: 5,877
Записей в блоге: 1
12.09.2021, 22:27
JavaScript
1
2
3
4
5
6
7
document.body.addEventListener("click", (e) => {
  const button = e.target.closest(".btn");
  if (button) {
    const hidden = button.closest(".card").querySelector(".visually-hidden");
    //показываем блок hidden
  }
});
2
0 / 0 / 0
Регистрация: 02.06.2021
Сообщений: 4
12.09.2021, 23:08  [ТС]
Спасибо работает, для незнающих можно обяснить toggle Только показывает при обратном нажатии он не скрывается
JavaScript
1
2
3
4
5
6
7
document.body.addEventListener("click", (e) => {
  const button = e.target.closest(".btn");
  if (button) {
    const hidden = button.closest(".card").querySelector(".visually-hidden");
    hidden.classList.toggle("visually-hidden");
  }
});
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
13.09.2021, 06:32
Цитата Сообщение от eyllowboy Посмотреть сообщение
для незнающих можно обяснить toggle Только показывает при обратном нажатии он не скрывается
У вас класс visually-hidden в данном случае используется в качестве местного идентификатора. Удалив класс, удалили идентификатор.
Бумажку с написанным адресом съели и запили кока-колой.

Два обходных решения:
- или не использовать класс visually-hidden в качестве местного идентификатора (класс будет только описанием внешнего вида. И на нём делать toggle)
- или использовать класс visually-hidden в качестве местного идентификатора. Тогда для toggle нужен вспомогательный класс show для переключения внешнего вида.
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .visually-hidden {
            display: none;
        }
 
        .show {
            display: block;
        }
    </style>
</head>
<body>
    <div id="container">
        <div class="card">
            <button class="btn">Кнопка</button>
            <div class="visually-hidden">111</div>
        </div>
        <div class="card">
            <button class="btn">Кнопка</button>
            <div class="visually-hidden">222</div>
        </div>
        <div class="card">
            <button class="btn">Кнопка</button>
            <div class="visually-hidden">333</div>
        </div>
    </div>
    <script>
        const container = document.getElementById("container");
 
        container.addEventListener("click", (e) => {
            const button = e.target;
            if (button.tagName === "BUTTON") {
                const hidden = button.nextElementSibling;
                //показываем блок hidden
                hidden.classList.toggle("show");
            }
        });
    </script>
</body>
</html>
0
0 / 0 / 0
Регистрация: 02.06.2021
Сообщений: 4
13.09.2021, 21:31  [ТС]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.09.2021, 21:31
Помогаю со студенческими работами здесь

Умножить значение каждого столбца DataGridView на соседний столбец и вывести сумму
Привет, пытаюсь сделать умножение столбца &quot;Количество&quot; на столбец &quot;Цена&quot; и последующую сумму из получившегося. Выходит только с последними...

Появление блока при наведении на соседний блок
Здравствуйте! Столкнулся с такой проблемой - никак не могу связать блоки div к друг другу. Суть в следующем: При наведении на какой либо...

Как заставить блок не прыгать под соседний?
При уменьшении ширины блок &quot;menu&quot; прыгает под блок &quot;logo&quot;, не могу понять как объяснить им оставаться на одной линии. Помогите,...

Удалить из каждого списка два элемента после каждого элемента с нечетным значением и подсчитать количество удаленных
Вот честно не пойму как это сделать буду очень благодарен если кто-то поможет

Перемещение блока при наведении курсора на соседний блок
Нужно чтоб Второй блок(id block_two) выезжал справа налево закрывая собой Первый блок(id block_one ),при наведении мышки на Первый блок. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru