• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

проблема с ифрейм

  • Автор темы Автор темы Vadik(R)
  • Дата начала Дата начала
V

Vadik(R)

Люди, как нибудь можно писать текст в ифрейм? Пытался сделать что-то вроде такого, но пишет все равно в основной документ. Помогите, если такое возможно
document.all.myiframe.document.write("somtext");
<iframe name="myiframe" ....
 
1 - где док-во того что это не работает?
2 - зачем тут ифрейм?
 
1. Можешь и сам проверить.
2. Так надо.
Какая разница работает или нет, я спрашиваю, значит не работает, значит я неправильно пытаюсь обратиться к документу ифрейма. А вот как правильно к нему обратится я и пытаюсь узнать :)
 
Код:
<html>
<body>
<script language="javascript">
function myfunc() {
var str="";
str+="<html>\n";
str+="<body>\n";
str+="<script language=\"javascript\">\n";
str+="alert(1);\n";
str+="<\/script>\n";
str+="<\/body>\n";
str+="<\/html>";
document.all.myiframe.document.write(str);
}
</script>
<iframe name="myiframe" width="800" height="800" src="http://www.muzmov.ru/" onload="myfunc();"></iframe>
123
</body>
</html>
Вот, он пишет не в ифрейм, а в сам главный документ :)
 
Ух, извини :)
Это просто последнее на чем я сохранил документ. Все, код подправил.
 
etc, ты не знаешь ответа или просто забил на меня?
Вообще, рассчитываю еще на Вовочку, может он чем поможет.
Сейчас пытался еще исправить последнюю строчку на:
Код:
document.all.myiframe.innerHTML=str;
Но браузер пишет, что "разрешение отклонено". Видимо не получится сделать то, что я хотел :)
 
Вообще, рассчитываю еще на Вовочку, может он чем поможет.
Пасибо, так уж и быть, отпишусь.
Люди, как нибудь можно писать текст в ифрейм? Пытался сделать что-то вроде такого, но пишет все равно в основной документ. Помогите, если такое возможно
Можно, но не все атк безоблачно.
После того, как фрейм (любой документ) загрузился, в него писать нельзя так как он "закрывается".
Чтоб в него что-то записать вам необходимо его открыть.
Код:
<html>
<head>
</head>
<body>
<iframe src='frame.html' name='fr' id='fr'></iframe>
<script>

var frdoc = document.getElementById('fr').contentDocument;
frdoc.open();
frdoc.writeln('<h2>Writed by script</h2>');
frdoc.close();

</script>
</body>
</html>
Это вполне рабочий код в опере и FF.
А теперь о подводных камнях. Это имменно та самая функция , которая при вызове отчищает документ.
Вы не сможете дописать, только перезаписать.
При тестировании у себя, я так и не смог получить доступ к содержимому фрейма, может при не локальном доступе и не будет этих ограничений безопасности (возможно лишь для одного и того же домена), но я не уверен.
 
Спасибо!
Когда пытался исправить строчку на "document.all.myiframe.innerHTML=str;", скрипт бы работал, если бы я в ифрейме открывал окно того же домена. А так он запретил мне изменять что-либо в том ифрейме. Вовочка, то, что ты написал - прекрасно подходит для Оперы и FF. А для ИЕ работает только иннерХТМЛ. Но всё равно спасибо, узнал для себя что-то новое :)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab