Как выполнить фрагмент кода в конкретном контексте
Как выплнить код в конкретном контексте. Вот есть сайт, я на нем с помощью гугл хроома нажимаю кнопки, и все хорошо работает, но когда я хочу заполнить один input, то элемент банально не находится.
![]() Но если поменять js контекст то элемент находится. ![]() Так вот вопрос, как сделать полноценный скрипт, который будет выполнять все нужные задачи на странице? Как при глобальном контексте найти этот input? |
"Контекст" - это просто (i)frame на странице. Если (i)frame того же домена - то можно работать из родителя(получить элемент <(i)frame>, получить у него contentWindow). Если (i)frame чужой - то только используя всякую особую магию расширений.
|
Этот фрейм (cvv) дочерний, как к нему обратиться из top?
|
Andreyy277,
document.querySelector('iframe').contentWindow.document.get... |
![]() видимо я ошибся, у cvv немного другой домен. Хотя вроде он под top, как обратиться к нему в таком случае? Если выбрать контекст cvv то я спокойно нахожу нужное поле, но в top не получается. Может как-то можно к нему обратиться? |
var a = document.getElementsByClassName('cvv'); a[0].contentWindow.document.getElementsByName('cardCvc'); Думал получилось, но все-таки они на разных доменах:( ![]() Хотя, казалось бы, это просто input на странице.Что делать в таком случае? |
мне нужно только 3 цифры вписать в этот input...
|
Страдать, что ещё.
Откуда ваш код берётся на этой странице? Если запускаете из консоли - без вариантов.(теоретически там может быть какое-то внутреннее апи для межфреймового общения, но реверсить его, даже если оно есть - вне ваших навыков) Если пишете юзерскрипт - делаете по скрипту для каждого домена(или один на оба, с условием) и вручную налаживаете общение меж ними(например через postMessage). Если пишете отдельное расширение - там есть возможность работать с чужими доменами из привилегированного кода. P.S. А лучше займитесь чем-нить не столь подозрительным. |
Можете какую-то литературу посоветовать для запуска скриптов для определенного домена, ну и как им взаимодействовать ?
|
Помогите чайнику
:help: :help: :help: Есть задача, для первоклашек, но я чайник полный. Согласно правилам задачи, в кинотеатре доступ на фильм ограничен с 13 лет и выше, проход для детей младше 13 лет только в сопровождении родителей. нам дано:
let age = 12; let accompanied = true; ??? Завершить задачу, используя переменные age и accompanied, чтобы узнать, разрешен ли проход в кино для даного 12летнего ребенка? А также изменив параметры возраста на 13 и отсутствие сопровождения: let age = 13; let accompanied = false; ??? Спасибо заранее за помощь, буду благодарен. Не ругайте строго чайника. Знаю, что задача ну совсем элементарная, но вынужден просить о помощи. |
Часовой пояс GMT +3, время: 00:30. |