Ожидатель селекторов

Делитесь модулями
  • @UserTrue ну так когда найдены были селекторы контент тоже может подгружаться после. В своей сборке использую интерактив и ожидание кэша, нет проблем с таймаутами. На кучу потоков всё гладко без ошибок. В моём случае это связка не подводит в 95% случаев.
    Ладно не будем холиварить, руки дойдут я мож сделаю нормальный модуль ожиданий событий в браузере.

  • @FastSpace said in Ожидатель селекторов:

    @UserTrue ну так когда найдены были селекторы контент тоже может подгружаться после. В своей сборке использую интерактив и ожидание кэша, нет проблем с таймаутами. На кучу потоков всё гладко без ошибок.
    Ладно не будем холиварить, руки дойдут я мож сделаю нормальный модуль ожиданий событий в браузере.

    Ну вот это действительно супер редкий случай и тут надо кэш использовать. Обычно когда контент динамический, то элемент который его содержит или просто не виден, либо вообще отсутствует. И почти всегда можно составить селектор который будет виден только когда есть контент. Для 99% случаев костыли с кэшем не нужны, потому что не всегда достаточно просто проверить был ли запрос, запросы могут отличаться только параметрами тела запроса и тогда надо проверять ответ, а это уже сложней. А может быть вообще websocoket и что тогда?))

  • @UserTrue said in Ожидатель селекторов:

    А может быть вообще websocoket и что тогда?

    код js обработки websocoket можно модифицировать для своих целей.
    жаль в бас нет нативного для работы с вебсокет.

  • @tet-vivi said in Ожидатель селекторов:

    @UserTrue said in Ожидатель селекторов:

    А может быть вообще websocoket и что тогда?

    код js обработки websocoket можно модифицировать для своих целей.
    жаль в бас нет нативного для работы с вебсокет.

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

  • @UserTrue websocoket вроде не так уж и распространён

  • @tet-vivi said in Ожидатель селекторов:

    @UserTrue websocoket вроде не так уж и распространён

    это к чему? случаи когда кода нельзя обойтись селектором ещё менее распространены )

  • Вот как я Люблю Споры этих наших Двух ребят, в их Спорах можно научиться многому :)
    А Модуль сам имеет место быть так сказать, почему нет мол :)

  • @super84 said in Ожидатель селекторов:

    Вот как я Люблю Споры этих наших Двух ребят, в их Спорах можно научиться многому :)
    А Модуль сам имеет место быть так сказать, почему нет мол :)

    Самое интересное, что когда @olegtut сделал такой модуль, то никто не спорил. А тут видимо ревность какая-то )) Я не использовал тот модуль в первую очередь из-за невозможности сохранить результат в отдельные переменные, я люблю осмысленные названия переменных и поэтому для меня это было важным.

    Ну а так то могу удалить тему, если модуль так раздражает )) Кто успел скачать того и тапки xD

  • @UserTrue said in Ожидатель селекторов:

    @super84 said in Ожидатель селекторов:

    Вот как я Люблю Споры этих наших Двух ребят, в их Спорах можно научиться многому :)
    А Модуль сам имеет место быть так сказать, почему нет мол :)

    Самое интересное, что когда @olegtut сделал такой модуль, то никто не спорил. А тут видимо ревность какая-то )) Я не использовал тот модуль в первую очередь из-за невозможности сохранить результат в отдельные переменные, я люблю осмысленные названия переменных и поэтому для меня это было важным.

    Ну а так то могу удалить тему, если модуль так раздражает )) Кто успел скачать того и тапки xD

    Людям порой не угодишь, сегодня им нужно одно, завтра другое. Поэтому если считаешь нужно, значит нужно. А так думаю тут не ревность, а желание поспорить. От себя скажу что бывали моменты когда сайт выдавал кучу ошибок и их все нужно было обрабатывать, в таком случае подобный модуль бы пригодился, чем захламлять скрипт кучей IF.

  • @UserTrue А для чего столько инпутов? Проще было сделать один инпут с кнопками "добавить" и "удалить"

  • @Fox said in Ожидатель селекторов:

    @UserTrue А для чего столько инпутов? Проще было сделать один инпут с кнопками "добавить" и "удалить"

    Можно было и так. Но мне так удобней, не надо ничего добавлять удалять. 20 инпутов я думаю хватит с избытком. Я специально перенес кнопки сохранения вверх, чтобы не приходилось скролить все инпуты.

  • @FastSpace said in Ожидатель селекторов:

    интерактив и ожидание кэша

    Что за штуки? Первое - это эмуляция ожидания? А второе? Проблема эта задрала. В многопотоке, за частую, страницы просто отказываются прогружаться. Почитываю иногда форум, вижу тут кто-то говорит про 250, про 500 потоков. Я просто в осадочке. Как это все работает без ошибок.. Я всего 20 потоков, и все, понеслась - страницы не прогружаются, элементы не прогружаются. Большинство потоков заканчивается ошибкой из-за таймаутов

  • @realmedvedev said in Ожидатель селекторов:

    @FastSpace said in Ожидатель селекторов:

    интерактив и ожидание кэша

    Что за штуки? Первое - это эмуляция ожидания? А второе? Проблема эта задрала. В многопотоке, за частую, страницы просто отказываются прогружаться. Почитываю иногда форум, вижу тут кто-то говорит про 250, про 500 потоков. Я просто в осадочке. Как это все работает без ошибок.. Я всего 20 потоков, и все, понеслась - страницы не прогружаются, элементы не прогружаются. Большинство потоков заканчивается ошибкой из-за таймаутов

    Следите за нагруженностью системы, браузер не любит, когда система нагружена на 100%

  • @Fox да у меня хорошая машина, она даже в половину не загружена.
    сейчас работает в 10 потоков и всё равно периодически всплывают такие:
    net::ERR_CONNECTION_TIMED_OUT
    net::ERR_TIMED_OUT
    net::ERR_CERT_COMMON_NAME_INVALID
    Не удалось получить страницу http://ip.bablosoft.com/?requestid=91983 с помощью ХТТП клиента

    Он не то, чтобы не успевает прогрузить страницу. Он отсылает запрос на сайт, а сайт сразу отдаёт серый экран с ошибкой - мол, не удалось загрузить страницу. Скрипт не находит нужный элемент и заканчивается таймаутом. Приходится постоянно делать в скрипте перепроверки - прогрузилась ли страница. В режиме записи всё ок, а вот в многопотоке на постоянной основе эта проблема

  • @realmedvedev said in Ожидатель селекторов:

    @Fox да у меня хорошая машина, она даже в половину не загружена.
    сейчас работает в 10 потоков и всё равно периодически всплывают такие:
    net::ERR_CONNECTION_TIMED_OUT
    net::ERR_TIMED_OUT
    net::ERR_CERT_COMMON_NAME_INVALID
    Не удалось получить страницу http://ip.bablosoft.com/?requestid=91983 с помощью ХТТП клиента

    Он не то, чтобы не успевает прогрузить страницу. Он отсылает запрос на сайт, а сайт сразу отдаёт серый экран с ошибкой - мол, не удалось загрузить страницу. Скрипт не находит нужный элемент и заканчивается таймаутом. Приходится постоянно делать в скрипте перепроверки - прогрузилась ли страница. В режиме записи всё ок, а вот в многопотоке на постоянной основе эта проблема

    Вы уверены, что ваше сообщение связано с текущей темой?

  • @UserTrue Не не в Коим Случае не Удаляй, пох что там думают, я например в Закладочки склал и Примерно вижу где он может Облегчить мне жизнь мол :)))

    Я на ваших Советах с Фоксом и ещё некоторых (споров ваших с Фэтспайсом мол ток).
    Ты умный Чел и тебе вообще должно быть Пох :)))

    4985fccf-8649-485e-840f-2df8ad2ca678-image.png

  • @realmedvedev said in Ожидатель селекторов:

    @FastSpace said in Ожидатель селекторов:

    интерактив и ожидание кэша

    Что за штуки? Первое - это эмуляция ожидания? А второе? Проблема эта задрала. В многопотоке, за частую, страницы просто отказываются прогружаться. Почитываю иногда форум, вижу тут кто-то говорит про 250, про 500 потоков. Я просто в осадочке. Как это все работает без ошибок.. Я всего 20 потоков, и все, понеслась - страницы не прогружаются, элементы не прогружаются. Большинство потоков заканчивается ошибкой из-за таймаутов

    Чтобы такого не происходило нужны циклы ожидания.
    Сначала делаешь какое-нибудь действие, если результат это действия будет загрузка страницы целиком, либо часть загрузки, то запускаешь цикл с интерактив и можно еще вайт кэш. Метод document.readyState и метод с кэшем в выполнить код wait_load (маска) . Можно погуглить.
    Всё этот цикл завершается корректно и дальше можно работать с элементами. Не нужно вызывать их ожидание через "Проверить существование", плодить кучу if и т.д. 1 функция интерактив + вай кэш. Вызывать в тех местах где пошла загрузка страницы (например после клика на кнопку)
    Работает почти в 95% случаев, кроме парочки сайтов. На такой случай у меня костыль на количество элементов на странице.

  • @Bcsteam I have checked working with iframe and I don't see a problem

  • @UserTrue А как вы делаете выпадающий список в модуле? И чекбоксы?

  • @mansory333 через код в файле интерфейса