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

Поиск элементов на странице

05.11.2022, 20:15. Показов 500. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
на странице есть множество следующих элементов:
HTML5
1
2
3
<span class="reaction-text js-reactionText">
<bdi>Мне нравится</bdi>
</span>

при наведении на элемент появляется менюшка с список действий
нужно кликнуть на все внутренние элементы с классом reaction reaction--2


HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div class="tooltip-content">
        <div class="tooltip-content-inner">
            <div class="reactTooltip">
                
                    <a href="/profile-posts/223730/react?reaction_id=1" class="reaction reaction--1" data-reaction-id="1"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Мне нравится" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Мне нравится" id="js-XFUniqueId152"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=2" class="reaction reaction--2" data-reaction-id="2"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Обожаю" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Обожаю" id="js-XFUniqueId153"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=3" class="reaction reaction--3" data-reaction-id="3"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Ха-ха" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Ха-ха" id="js-XFUniqueId154"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=4" class="reaction reaction--4" data-reaction-id="4"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Ух ты" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Ух ты" id="js-XFUniqueId155"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=5" class="reaction reaction--5" data-reaction-id="5"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Грустно" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Грустно" id="js-XFUniqueId156"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=6" class="reaction reaction--6" data-reaction-id="6"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Злость" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Злость" id="js-XFUniqueId157"></a>
                
                    <a href="/profile-posts/223730/react?reaction_id=7" class="reaction reaction--7" data-reaction-id="7"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Мне не нравится" data-xf-init="tooltip" data-extra-class="tooltip--basic tooltip--noninteractive" data-delay-in="50" data-delay-out="50" data-original-title="Мне не нравится" id="js-XFUniqueId158"></a>
                
            </div>
        </div>
    </div>
Пытался сам сделать, но так и не смог докапатся до элементов чтобы вызвать click()
JavaScript
1
2
3
const content = document.getElementsByClassName("tooltip-content")
const likes = document.getElementsByClassName("tooltip-content-inner")
const finallyList = document.getElementsByClassName("reactTooltip")
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.11.2022, 20:15
Ответы с готовыми решениями:

Поиск элементов на другой странице
Прошу помощи,излазил весь интернет,но так и не нашел то,что нужно. Есть два html документа. В одном нужна просто строка поиска+вывод...

Поиск элементов на странице. Selenium
Всем привет, у меня вопрос по поиску элемента на странице. Делаю что-то вроде скрипта, наверное, для покупки вещей на сайте, когда дохожу...

Поиск элементов на странице, Python selenium
Здравствуйте. Пишу скрипты для автоматизации действий пользователя и в большинстве функций ищу элементы по средством xpath. Знаю, что...

7
 Аватар для klyapa
3503 / 1267 / 429
Регистрация: 24.07.2016
Сообщений: 1,890
05.11.2022, 21:58
JavaScript
1
2
3
document.querySelector('.reactTooltip')
    .querySelectorAll('.reaction.reaction--2')
        .forEach(e => e.click());
0
1 / 1 / 0
Регистрация: 31.12.2020
Сообщений: 86
05.11.2022, 22:31  [ТС]
klyapa, спасибо, но лайкает только первую запись, остальные не трогает
пробовал фиксить сам, взяв все элементы с .reactTooltip но не получилось
Миниатюры
Поиск элементов на странице  
0
1 / 1 / 0
Регистрация: 31.12.2020
Сообщений: 86
05.11.2022, 22:48  [ТС]
не совсем корректно изначально задал вопрос
так выглядит сам комментарий:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<footer class="message-footer">
            <div class="message-actionBar actionBar">
        <div class="actionBar-set actionBar-set--external">     
            <a href="/posts/2916457/react?reaction_id=1" class="reaction reaction--small actionBar-action actionBar-action--reaction reaction--1 reaction--imageHidden" data-reaction-id="1" data-xf-init="reaction" data-reaction-list="< .js-post | .js-reactionsList" id="js-XFUniqueId11"><i aria-hidden="true"></i><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="reaction-sprite js-reaction" alt="Мне нравится" title="Мне нравится"> <span class="reaction-text js-reactionText"><bdi>Мне нравится</bdi></span></a>
        </div>
            <div class="actionBar-set actionBar-set--internal"> 
                <span class="actionBar-action actionBar-action--inlineMod">
                    <label class="iconic iconic--hiddenLabel" data-xf-init="tooltip" data-original-title="Выделить для модерации" id="js-XFUniqueId12"><input type="checkbox" value="2916457" class="js-inlineModToggle"><i aria-hidden="true"></i><span class="iconic-label"><span class="u-srOnly">Выделить для модерации</span></span></label>
                </span>     
        </div>              
            </div>  
        <div class="reactionsBar js-reactionsList" style=""></div>
        <div class="js-historyTarget message-historyTarget toggleTarget" data-href="trigger-href"></div>
    </footer>
0
 Аватар для klyapa
3503 / 1267 / 429
Регистрация: 24.07.2016
Сообщений: 1,890
06.11.2022, 00:22
Лучший ответ Сообщение было отмечено chukaz как решение

Решение

Цитата Сообщение от chukaz Посмотреть сообщение
но лайкает только первую запись, остальные не трогает
А если так...
JavaScript
1
2
3
document.querySelectorAll('.reactTooltip').forEach(
    e => e.querySelectorAll('.reaction.reaction--2').forEach(e => e.click());
);
0
1 / 1 / 0
Регистрация: 31.12.2020
Сообщений: 86
06.11.2022, 10:52  [ТС]
Uncaught SyntaxError: missing ) after argument list
0
Молодой техлид)
Эксперт JSЭксперт HTML/CSS
 Аватар для mr_dramm
1818 / 1056 / 329
Регистрация: 17.07.2021
Сообщений: 2,147
Записей в блоге: 14
06.11.2022, 12:14
Цитата Сообщение от chukaz Посмотреть сообщение
Uncaught SyntaxError: missing ) after argument list
Используйте редктрокр c проверкой синтаксиса например VSCode, если очень лень что то менять в своей жизни, то можно попробовать инструмент отладки в браузере. Или можно продолжать биться головой об стену тоже вариант, который может привети к неожиданным последствиям
0
1 / 1 / 0
Регистрация: 31.12.2020
Сообщений: 86
06.11.2022, 12:21  [ТС]
vscode не давал ошибок, починил сам
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.11.2022, 12:21
Помогаю со студенческими работами здесь

Поиск по странице!!!!
Потскажмте скрит для поиска слов по странице!!!! например если нажодит выделяет их цветом!! Оч надо

Поиск по странице
День добрый, может кто знает, есть ли такой поиск на joomla, который бы искал по странице, ну как браузерный. Есть просто огромная таблица...

Поиск по странице
Доброго времени суток. Сделал простую страницу по туториалу. Выглядит вот так ...

JS поиск по странице
Добрый вечер! Есть скрипт поиска по странице, var NS4 = (document.layers); var IE4 = (document.all); var win = window; ...

поиск на странице
Скажите как сделать поиск на странице (Pages). В View у меня есть кнопка EnvName :=...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru