Как я могу получить элемент фрейма фреймов с помощью JavaScript?

мне нужно получить доступ и элемент из фрейма набора фреймов. Например, если у меня есть следующая разметка:

<frameset rows="33%,33%,*">
  <frame src="frame1.html"/>
  <frame src="frame2.html"/>
  <frame src="frame3.html"/>
</frameset>

Как я могу получить некоторый элемент из одного из дочерних кадров? Я пробовал это:

window.frames[1].getElementById('someElementId')

это приводит к ошибке типа :

getElementById () не является функцией.

может кто-то помочь?

спасибо!

3 ответов


вам нужно получить объект документа для рамки.

window.frames[1].document.getElementById('someElementId')

<frameset rows="33%,33%,*">
<frame id="demo" src="frame1.html"/>
<frame src="frame2.html"/>
<frame src="frame3.html"/>
</frameset>

ответ:

document.getElementById("demo").contentDocument.documentElement.innerHTML;

вы также можете попробовать использовать framename

window.frames['frame_name'].document.getElementsByName('element_name');