Унификация модального окна

Tony80

Client
Регистрация
21.07.2021
Сообщения
186
Благодарностей
59
Баллы
28
Доброго вечера, такой вопрос.

Есть модальное окно (не какое-то конкретное по которому мы можем написать обработку), а в общем, любое модальное окно, которое всплывает и имеет какое-то содержание (например, уточнение города, согласие с принятие данных или вообще какая-то реклама).

Можем ли мы его проверить по какому-то общему признаку (чтобы определить как объект), чтобы потом создать событие для закрытия [да/нет], [хорошо] или просто закрыть через клик по крестику (закрытие окна).

Конкретная рабочая ситуация.

На входе есть поток сайтов, они всегда разные их большое кол-во, поэтому писать обработку в каждом случае - это огромный объём работы.

Часть из них выдают модалки (я не рассматриваю всякие онлайн чаты, их действительно можно отловить по коду), я имею ввиду нативные модалки сайта, которые могут быть оформлены как угодно.

Можно их как-то унифицировать, чтобы автоматически их закрывать или хотя бы попадать мышкой в кнопку [ok] или [хорошо]?
 

Ахилес

Client
Read only
Регистрация
11.11.2020
Сообщения
956
Благодарностей
392
Баллы
63

Tony80

Client
Регистрация
21.07.2021
Сообщения
186
Благодарностей
59
Баллы
28

radv

Client
Регистрация
11.05.2015
Сообщения
3 788
Благодарностей
1 952
Баллы
113
Это работает только на стандартных модальных окнах JS да/нет. На прочих оно не срабатывает :(
Собирать код модальных окон, потом определять, по какому элементу, тегу и т.п. можно определить их наличие. Создаете свою базу этих признаков. Потом в работе перебирать все параметры из собранной базы, для определения их наличия и нужного варианта обработки окна.
 

Tony80

Client
Регистрация
21.07.2021
Сообщения
186
Благодарностей
59
Баллы
28
Собирать код модальных окон, потом определять, по какому элементу, тегу и т.п. можно определить их наличие.
Выше уже упоминал, объём выборки может быть очень большой, это могу быть тысячи сайтов.
Вероятно, кол-во вариаций будет меньше, но здесь надо с чего-то начать. Просто последовательно перебирать все попадающиеся варианты и ветвить условие & вариан1 & вариант 2 & вариант N мне представляется не самым лучшим.

Создаете свою базу этих признаков. Потом в работе перебирать все параметры из собранной базы, для определения их наличия и нужного варианта обработки окна.
Повторюсь - когда есть готовый набор признаков - понятно. Даже когда есть строгий объём сайтов - тоже понятно, потому что можно +- сформировать выборку, но когда теоретически кол-во сайтов может быть тысячи, десятки тысяч. Это превращается в нерешаемую задачу.
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 788
Благодарностей
1 952
Баллы
113
Выше уже упоминал, объём выборки может быть очень большой, это могу быть тысячи сайтов.
Ну так можно использовать готовые варианты, а неизвестные сохранять в файлы для послед, обработки и пополнения базы, она и будет постепенно пополнятся со временем. Можно это делегировать, чтобы не тратить свое время.
Или делать отдельные реализации под конкретные признаки, чтобы не путаться в обработке множества вариантов.
 

Tony80

Client
Регистрация
21.07.2021
Сообщения
186
Благодарностей
59
Баллы
28
Ну так можно использовать готовые варианты
Это понятно, это, скажем так, резервный вариант.
В исходном варианте звучит вопрос - можем ли, как-то универсально отделить, скажем, модальное окно от основного html кода или мы получим такое кол-во вариантов оформления модальных окон, что унифицировать это не получится и не стоит даже смотреть в эту сторону?


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

radv

Client
Регистрация
11.05.2015
Сообщения
3 788
Благодарностей
1 952
Баллы
113
В исходном варианте звучит вопрос - можем ли, как-то универсально отделить, скажем, модальное окно от основного html кода или мы получим такое кол-во вариантов оформления модальных окон, что унифицировать это не получится и не стоит даже смотреть в эту сторону?
Пока не попробуешь не узнаешь. Всегда может появиться что то новое.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)