Работа с фреймами с moovweb sdk

Я создал проект с помощью moovweb sdk, и у меня возникли проблемы при редактировании контента в iframe на одной из страниц. Например, перемещение div внутри внутри iframe, похоже, не работает с тритием, который я пишу. Что я могу сделать с тритием, чтобы сделать эту работу? Домены разные К вашему сведению.

3 ответа

Если iframe имеет тот же источник ( http://m.yoursite.com/) или источник, который вы указали в своем config.json Вы можете абсолютно использовать тритий! Однако, может быть, не так, как вы ожидаете!

Итак, iFrame собирается сделать отдельный запрос к src расположение атрибута. Если вы убедитесь, что этот запрос проходит через SDK (переписав его) следующим образом:

$(".//iframe[@src]") {
  attribute("src") {
    rewrite("link")
  }
}

Затем вы можете отобразить этот URL и выполнить свой обычный тритий на нем!

К сожалению, Tritium позволяет редактировать только атрибуты самого iframe, а не содержимое внутри.

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

Я знаю два обходных пути:

  1. Добавьте второй веб-сайт в качестве проекта Moovweb, и вы сможете использовать Tritium для управления контентом. Затем вы можете указать фрейм оригинальной страницы на этот новый контент.
  2. Используйте JavaScript/AJAX для изменения содержимого iframe.

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

Вам нужно проанализировать src iframe и написать в mappings.ts отображение для URL в src. Включите правильный файл.ts в папку страниц и начните преобразовывать его.

Другие вопросы по тегам