Добавление содержимого iframe в родительский документ с использованием локальных файлов - PullRequest
0 голосов
/ 01 сентября 2018

У меня есть код для извлечения контента из страницы в iframe и добавления его на родительскую страницу. Родительская и исходная страницы iframe находятся в одном каталоге, поэтому нет проблем с несколькими доменами.

Это будет работать на сервере, но, очевидно, нет, если все файлы работают на вашем компьютере локально. Я рвал на себе волосы, прежде чем понял это. Локальный запуск файлов просто дает cont2 неопределенное значение.

Мне нужно запустить это локально без сервера из-за чувствительности файлов, с которыми я имею дело. Хотя я не знаю, как это сделать.

Я попытался установить document.domain = "local.com" в обоих файлах, но это не сработало.

Есть ли способ сделать это?

Спасибо

Родительская страница:

<html><head>
    <script  src="https://code.jquery.com/jquery-3.3.1.js"></script></head><body>
    <iframe id="frame1" src="page1.html"></iframe><br>
    <button id="button2">Something</button>
    <script>$("#button2").click(function(){
        cont2 = $("#frame1").contents().find("div").html();
        console.log(cont2);
        $("#div2").html(cont2);
    });</script>
    <div id="div2">TBD</div>
</body></html>

iFrame Источник:

<html>
    <head></head>
    <body>
        <div id="div1">TODO write content</div>
    </body>
</html>

1 Ответ

0 голосов
/ 06 сентября 2018

Некоторые версии IE позволят этому работать «из коробки». Похоже, он обрабатывает локальные файлы как на одном сервере.

Для Chrome вам нужно временно отключить пару вещей. Увидеть: Отключить ту же политику происхождения в Chrome

...