В доступе отказано в доступе к свойству "документ"
Я использую следующий скрипт, создайте этот скрипт на своей странице, добавьте iframe, и я хочу получить iframe html.
<script src="http://ads.sonobi.com/ttj?id=881134" type="text/javascript"></script>
Проблема в том, что в iframe есть внутренний iframe.
Javascript следующая функция, используемая для получения содержимого ifrmae
document.getElementById('f1').contentWindow.document.body.innerHTML
Когда я запускаю это покажет следующую ошибку
Permission denied to access property 'document'
Как решить проблему, в разрешении отказано.
3 ответа
Ты не можешь
Зачем? Это функция безопасности, позволяющая остановить межсайтовый скриптинг (XSS).
Например, у вас есть iframe, который загружает www.facebook.com
, Если эта функция безопасности не реализована, вы можете легко получить данные с этого сайта. От файлов cookie, до того, какой контент находится на странице.
Здесь есть более полезная информация: http://www.veracode.com/security/xss
Я не смотрел на JS, но вы не можете получить HTML с удаленной страницы с помощью JavaScript. Попробуйте PHP CURL.
Пытаться
var frame = document.getElementById('f1');
var doc = frame.contentWindow || frame.contentDocument;
var html = doc.document.body.innerHTML
Источник: Frame / IFrame contentDocument Property.