Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Обращение к элементу другуго документа (https://javascript.ru/forum/misc/37389-obrashhenie-k-ehlementu-drugugo-dokumenta.html)

betmanenko 17.04.2013 23:11

Обращение к элементу другуго документа
 
Собственно задача такова
Выдать бегущую строку в горизонтальном окне (фрейме) из другого документа
Основная страница
<html><head><title>Lab po JS</title>
</head>
<frameset rows="*,*">
<frame SRC="frame1.html" NAME="frame1">
<frame SRC="frame2.html" NAME="frame2">
</frameset>
</html>

1 фрейм
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Пример бегущей строки 1</title>
</head>

<body>
<SCRIPT LANGUAGE='JavaScript'>
function outmsg()
{
   msg =parent.frames["frame2"].msg1.msg2.innerHTML + " --- "
   newmsg = msg
   while (newmsg.length < 70) {newmsg += msg}
   document.write ('<FORM NAME="Outmsg">')
   document.write ('<CENTER><INPUT NAME="outmsg" VALUE= "'+newmsg+'" SIZE= '+ctrlwidth+'></CENTER>')
   document.write ('</FORM>')
   rollmsg()
}
function rollmsg()
{
   NowMsg=document.Outmsg.outmsg.value
   NowMsg=NowMsg.substring(1,NowMsg.length)+NowMsg.substring(0,1)
   document.Outmsg.outmsg.value = NowMsg
   bannerid=setTimeout("rollmsg()",100)
}
</SCRIPT>
</body>
</html>

2 фрейм
<html><head><title>Lab po JS</title>
</head>
<body>
<div id="pg">
Бегущая строка</div>
<FORM NAME="msg1">
   <CENTER><INPUT NAME="msg2" VALUE= "lalka" SIZE= '70'></CENTER>
   </FORM>
   </body>
</html>

Собственно интересует обращение в соседний фрейм ради получения строки
parent.frames["frame2"].msg1.msg2.innerHTML

так не работает

skrudjmakdak 18.04.2013 09:09

console.log - функция, которая выводит результат в консоль
parent.frames["frame2"] - доступ ко второму фрейму
parent.frames["frame2"].document - обращение к документу второго фрейма
getElementById - функция, которая находит элемент по id (... <div id="pg"> ... )
innerHTML - выводит html код

console.log(parent.frames["frame2"].document.getElementById('pg').innerHTML);


Часовой пояс GMT +3, время: 00:12.