Как вставить содержимое в iframe без src?

Вставка содержимого в iframe без использования атрибута src может быть достигнута с помощью JavaScript. Для этого можно использовать методы document.write() и document.open() для создания нового документа внутри iframe.

Вот пример кода, демонстрирующий этот подход:

<!DOCTYPE html>
<html>
<head>
  <title>Пример вставки содержимого в iframe без src</title>
</head>
<body>
  <iframe id="myIframe" width="500" height="300"></iframe>

  <script>
    // Получаем ссылку на iframe
    var iframe = document.getElementById('myIframe');

    // Получаем документ iframe
    var iframeDocument = iframe.contentDocument || iframe.contentWindow.document;

    // Открываем документ
    iframeDocument.open();

    // Вставляем содержимое
    iframeDocument.write('<html><head><title>Встроенная страница</title></head><body><h1>Привет, мир!</h1></body></html>');

    // Закрываем документ
    iframeDocument.close();
  </script>
</body>
</html>

В этом примере создается пустой iframe с помощью элемента <iframe>. Затем JavaScript код получает ссылку на iframe через его идентификатор, используя метод getElementById(). Далее получается документ iframe через свойство contentDocument или contentWindow.document. Затем, с использованием методов open(), write() и close(), создается и вставляется содержимое внутри iframe.

Обратите внимание, что из-за политики безопасности браузера, этот код должен быть размещен на том же домене, что и исходная страница. Если код размещен на другом домене, возникнет ошибка «Blocked a frame with origin...».

Также стоит отметить, что данный метод может быть использован только для статического содержимого. Если вам требуется динамически изменять содержимое iframe без использования атрибута src, вам может потребоваться использовать другие методы, такие как postMessage() для взаимодействия между исходным документом и iframe.