Как изменить javascript контекст в jquery? - PullRequest
2 голосов
/ 30 марта 2020

Когда я звоню $(element).attr('class'), когда javascript context:top (chrome консоль), это не работает. Когда я изменяю его на OffAmazonPaymentsWidgets1IFrame, он работает, потому что этот элемент в другом iframe и имеет другой тег html в этом кадре. Как я могу изменить javascript контекст? enter image description here

1 Ответ

2 голосов
/ 30 марта 2020

Это может быть связано с тем, что у iframe есть дополнительный набор ограничений из-за присутствия атрибута песочницы, например, запрещение javascript в iframe.

"Атрибут песочницы включает дополнительный набор ограничений для содержимого в iframe.

Когда атрибут песочницы присутствует, он будет:

  • обрабатывает содержимое как уникальное происхождение

  • отправка блочной формы

  • выполнение скрипта блока

  • отключить API

  • запретить ссылки на другие контексты просмотра

  • запретить использование контента плагинами

  • запретить контенту перемещаться по контексту просмотра верхнего уровня

  • блокировать автоматически запускаемые функции (такие как автоматическое воспроизведение видео или автоматическая фокусировка элемента управления формы)

Значением атрибута песочницы может быть либо песочница (тогда применяются все ограничения), либо разделенный пробелами список предварительно определенных значений, которые УДАЛЯТ конкретные ограничения. "

Цитируется из: https://www.w3schools.com/tags/att_iframe_sandbox.asp

Вы можете попробовать разрешить скрипт, установив атрибут песочницы в iframe, как показано ниже:

<iframe src="demo_iframe_sandbox_origin.htm" sandbox="allow-scripts"></iframe>

Цитируется из: https://www.w3schools.com/tags/att_iframe_sandbox.asp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...