Доступ до frame (not iframe) с помощью jQuery

268
13 апреля 2017, 18:55

Есть index.html с двумя frame.

<frameset rows="50%, 50%">
        <frame id="frame1" src="frame1.html" />
        <frame id="frame2"  src="frame2.html" />
</frameset>

Есть frame1.html c таким кодом:

   <body id="bodytest">
frame1 show
   </body>

Пытаюсь делать так.

$('#bodytest',top.frames["frame1"].document).append("<div>yes,div</div>");

Я хочу достучаться до body и добавить div. Как это можно сделать?

Answer 1
<frameset rows="50%, 50%">
 <frame name="frame_A" src="frA.html">
 <frame name="frame_B" src="frB.html">
</frameset>

frA.html:

<button onclick="parent.frame_B.document.write('Hello, another World!);">Кнопащка</button>

    Когда вы работаете с фреймами, ваш код работает В КОНТЕКСТЕ ФРЕЙМА, в котором он написан. Чтобы залезть из одного фрейма в другой, вам нужно: Пойти в родителя - окно браузера (parent) (чем глубже вложенность - тем больше парентов) Выбрать фрейм по имени (parent.frameName) и дальше делать то, что вы хотели. Варианта на jQuery не встречал и не знаю - отказался от фреймов раньше, чем начал изучать jQuery.

READ ALSO
Проблема с datepicker

Проблема с datepicker

Когда скроллю страницу, календарь уползает со своего певоначального местаКак зафиксировать положение? Пробую изменить parentEl c 'body' на другой,...

254
Загрузка JSON в fabric js

Загрузка JSON в fabric js

Всем привет! У меня такой вопросЕсть инструмент по рисованию, который использует fabric js, и есть инструмент по загрузке уже нарисованного из ранее...

192
Как прикрутить ajax к форме

Как прикрутить ajax к форме

Есть страница с формой, и загрузкой файлаПо идее сам файл должен загружаться на сервер, а его имя и данные из формы в mysql, и все, соответственно,...

212
Отправка запроса на сервер

Отправка запроса на сервер

На сервер отправляю запрос с JWT-ключем в заголовке, в ответ сервер отправляет новую страницуВопрос, как изменить текущую страницу на новую...

209