Чтобы иметь ссылку на внешний тег <body>из iFrame - PullRequest
0 голосов
/ 10 мая 2019

Я работаю над пользовательским визуалом PowerBI. Что я хочу сделать, так это получить доступ к самому внешнему тегу body, чтобы прикрепить элемент с помощью jQuery, но я не могу этого сделать, поскольку все пользовательские визуальные элементы загружаются в iFrame, а мой текущий объект окна указывает только на область контейнера iframe.

Как я могу получить доступ снаружи из этого iFrame к родительскому окну (самое верхнее)? Я знаю, и я прошел через аналогичные ответы на StackOverflow и GitHub. Мне даже понравился этот ответ здесь. Как общаться между iframe и родительским сайтом?

Теперь проблема в том, что это тот же самый iframe домена, который я вижу в URL, т.е. https://app.powerbi.com.

Во-вторых, при разработке пользовательского визуала в VSC или других редакторах с использованием API-интерфейсов PBIVIZ у вас есть доступ только к контейнеру iframe, в который загружен ваш пользовательский визуал. Таким образом, вы не можете получить доступ к коду, который находится снаружи или в родительском местоположении этого iFrame. Я считаю, что это часть самой среды PowerBI.

В-третьих, нет конфигурации, позволяющей удалить или загрузить пользовательский визуал без самого iFrame. Пожалуйста, дайте мне знать, если есть.

Это также делается для одного из собственных визуальных элементов Power BI (среза даты), который не загружает iFrame при проверке этого кода в браузере.

У кого-нибудь есть идея? GitHub выпуск для получения дополнительной информации: https://github.com/microsoft/PowerBI-visuals/issues/544

1 Ответ

0 голосов
/ 24 мая 2019

Нет возможности получить доступ к родительскому DOM.Визуальные элементы выполняются внутри iframe по соображениям безопасности, а также изолируют iframe в функциональных аспектах.(например, запретить изменение стилей интерфейса Power BI)

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