0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34

Не находится элемент на странице

25.06.2025, 22:20. Показов 2152. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Ситуация такая: на странице есть кнопка, по нажатию на которую в html добавляется несколько новых тегов span с текстом (теги появляются, я проверял). Потом делаю поиск тегов span
let elem = document.querySelectorAll('span');

Старые теги находит, а новые нет. Что за фигня?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.06.2025, 22:20
Ответы с готовыми решениями:

Как из формы которая находится на странице которая грузилась первой передать информацию на вторую страницу?
По ходу работы с документом, в один фрэйм у меня грузется сначало первая страница, потом заместно...

Нужно выделить пункт меню, на странице которого пользователь находится в данный момент
Добрый день, CSS и HTML более менее выучила, а в JS пока нет желания лезть, вот ищу готовые...

Вызов в html-странице Vue, который находится в отдельном файле
Здравствуйте! Гуглю, гуглю, но так и не могу найти хорошее объяснение на вопрос, как банально имея...

36
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34
03.07.2025, 18:47  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от krvsa Посмотреть сообщение
начит на момент твоего запроса их просто нет в ДОМ.
Естественно. Что делать то?
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
03.07.2025, 18:51
Лучший ответ Сообщение было отмечено Дмитрий2003 как решение

Решение

Цитата Сообщение от Дмитрий2003 Посмотреть сообщение
Естественно. Что делать то?
Ставить MutationObserver.
https://developer.mozilla.org/... onObserver
Следить, когда они появятся и только после этого делать все остальное.
0
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34
03.07.2025, 18:54  [ТС]
Цитата Сообщение от krvsa Посмотреть сообщение
Значит на момент твоего запроса их просто нет в ДОМ.
Так и есть. Что делать с этим?
0
Заблокирован
03.07.2025, 19:17
Цитата Сообщение от Дмитрий2003 Посмотреть сообщение
Что делать то?
Это я тебе в самом начале сказал, что делать.
Не находится элемент на странице
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
03.07.2025, 19:29
Цитата Сообщение от black1385 Посмотреть сообщение
если динамически создаешь элементы, то потом так же динамически создавай JS, который будет эти элементы находить.
И как динамически создать скрипт после вставки элементов, если сначала надо определить в какой момент они вставляются?
0
Заблокирован
03.07.2025, 19:32
Цитата Сообщение от voraa Посмотреть сообщение
И как динамически создать скрипт после вставки элементов, если сначала надо определить в какой момент они вставляются?
После. Вначале вставка элементов. Потом создание js-скрипта. Пусть просто вставит мой код в консоль браузера и проверит. Увидит ли он новые элементы?
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
03.07.2025, 19:34
Цитата Сообщение от black1385 Посмотреть сообщение
После. Вначале вставка элементов. Потом создание js-скрипта.
Всю тему прочитать не дано? Всего то меньше 2 страниц
Цитата Сообщение от Дмитрий2003 Посмотреть сообщение
Я наверное не очень хорошо объяснил. Сайт не мой, я много с ним работаю и чтобы облегчить работу использую расширение браузера tampermonkey. Расширение внедряет на страницу мой собственный скрипт. Работает скрипт так: на странице создается кнопка, по нажатию на которой раскрывается список шаблонов, требуется кликнуть на определенном элементе списка. Списка изначально на странице нет, выводится скриптом. Кнопка работает, список раскрывается. Но дальше ничего не работает,....
Понял?
Какой то код, в который лезть нет никакой возможности вставляет в DOM элементы. И потом их надо находить. Т.е. надо поймать момент, когда этот неведомый код вставит элементы.
И зачем потом "динамически" создавать скрипт - никому, кроме тебя, непонятно. Потом достаточно вызвать функцию из скрипта, который создан в любое время раньше
0
Заблокирован
03.07.2025, 19:45
Цитата Сообщение от voraa Посмотреть сообщение
Понял?
Да хрень какая-то. Хоть сто раз почитаю, всё равно не пойму зачем это) Он же нашел возможность вставлять эти элементы на чужой сайт. Пусть найдет такую же возможность вставлять JS.
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
03.07.2025, 19:58
Цитата Сообщение от black1385 Посмотреть сообщение
Он же нашел возможность вставлять эти элементы на чужой сайт. Пусть найдет такую же возможность вставлять JS.
Так расширения для того и делают, что бы работать с чужими сайтами. И вставлять скрипт после чего то не надо. После чего то надо просто вызвать свою функцию. Но сначала определить момент, когда нужные элементы появляются на сайте. Обычно такие вещи делаются с помощью MutationObserver.

Добавлено через 6 минут
Дмитрий2003,
Еще раз.
openTamplace - твоя функция? Что она делает? Она синхронная или асинхронная?
Если она асинхронная, то надо дожидаться, когда она завершит работу промисами или через async/await.
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3846 / 1705 / 431
Регистрация: 14.03.2022
Сообщений: 4,351
04.07.2025, 08:55
Цитата Сообщение от black1385 Посмотреть сообщение
Вначале вставка элементов. Потом создание js-скрипта.
Ты все продолжаешь продвигать свою ахинею...
Сделать скрипт, который потом добавит другой скрипт. Это капец какое решение.
И самое главное не решена проблема "как узнать, что элементы уже появились"...
0
Заблокирован
04.07.2025, 09:26
krvsa, надо дождаться когда ТС всё-таки найдет правильное решение и вот потом посмотрим. Твои ответы также можно назвать ахинеей, потому что они тоже не работают по данному вопросу
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3846 / 1705 / 431
Регистрация: 14.03.2022
Сообщений: 4,351
04.07.2025, 10:12
black1385, ответ ТСу уже дан выше...
Цитата Сообщение от voraa Посмотреть сообщение
Ставить MutationObserver.
https://developer.mozilla.org/... onObserver
Следить, когда они появятся и только после этого делать все остальное.
0
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34
06.07.2025, 21:36  [ТС]
MutationObserver сработал, но почему-то не сработал код:
JavaScript
1
2
3
4
5
 let btn = findElementByTagAndText('span', 'Нажать').parentNode.parentNode;
 
console.log("btn " + btn .outerHTML); // btn <button class="styled__ButtonStyled-sc-1ksaaok-5 eNmfJv uikit-button" disabled=""><div class="styled__Loading-sc-1ksaaok-0 hEVLTm uikit-button_loading"></div><div class="styled__ButtonContent-sc-1ksaaok-1 gKuoyW uikit-button_content"><span class="uikit-button_label">Нажать</span></div></button>
 
btn.click(); // никакой реакции
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
06.07.2025, 21:51
В девтулсе смотреть какие обработчики установлены на эту кнопку.
Смотреть по коду обработчиков не проверяют ли они истинное нажатие от программного.
0
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34
06.07.2025, 21:54  [ТС]
А что толку смотреть? Я ведь не могу изменить код обработчиков.
0
 Аватар для voraa
1292 / 1270 / 189
Регистрация: 21.01.2024
Сообщений: 5,867
06.07.2025, 22:00
Цитата Сообщение от Дмитрий2003 Посмотреть сообщение
А что толку смотреть?
Смотреть всегда есть толк. Потому, что м.б. дело совсем не в этом (на самом деле такие проверки обычно вызваны бывают сильной паранойей и встречаются не часто). Просто ткнуть там точку останова и тупо смотреть, что происходит.
0
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 34
06.07.2025, 23:02  [ТС]
Я плохо разбираюсь в JavaScript. Не смогу понять что там происходит. Ладно, вам спасибо за помощь, на этом закончим.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.07.2025, 23:02
Помогаю со студенческими работами здесь

Нужно сделать кнопку на СВОЕЙ странице с урлом взятой с кнопки на ЧУЖОЙ странице
Мне нужно сделать кнопку на СВОЕЙ странице с урлом взятой с кнопки на ЧУЖОЙ странице... Урл кнопки...

С помощью таймера отобразить на странице текущее время, день недели и дату на странице
Здравствуйте. Я начинающий помогите пожалуйста с заданием. Буду признателен. С помощью таймера...

Необходимо создать три кнопки во внутренней странице (во 2о странице)
VK Mini Apps (&quot;web&quot;) на React. Есть страница. На странице 5 активных кнопок (Тренировки,...

Надо удалить со страницы контрол, который находится внутри формы
Надо удалить со страницы контрол, который находится внутри формы var frm; //Переменная формы var...

Где может находится JavaScript функция, указанная в HTML коде страницы?
Всем привет. Сам я из смежной темы: 1С. Пишу парсер под 1с . В HTML, JavaScript, мягко говоря...


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

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru