#javascript #jquery #frames
#javascript #jquery #фреймы
Вопрос:
У меня есть страница, которую я должен обновить, она состоит из 3 фреймов (верхняя панель, боковая панель и основное содержимое. Если я нажимаю что-то в основном фрейме содержимого, я хочу обновить список в рамке боковой панели. как мне это сделать (я использую jquery или javascript для нажатия кнопок).
Комментарии:
1. является ли использование фреймов обязательным? их следует и можно избежать, imo.
2. Я пробовал Divs, но потом у меня возникли проблемы с position: absolute, поэтому я попробовал tables и столкнулся с еще худшими проблемами при применении всех стилей, поэтому, чтобы сэкономить время, я просто собираюсь использовать фреймы, которые они мне дали
3. Может быть, хорошей идеей будет использовать фрейм для верхней панели, поскольку в нем есть много содержимого, которое я не успею переписать, а затем создать боковую панель и основные таблицы содержимого
Ответ №1:
Вы должны установить имя вашего фрейма в качестве цели вашего a-тега.
<a href="example.html" target="your-frame-name">yourlink</a>
Ответ №2:
Вот что я предлагаю, основываясь на моем понимании вашего макета. У вас есть одно окно с тремя фреймами в нем. Кроме того, вы используете jQuery.
Когда вы находитесь в одном iframe и вам нужно поговорить с другим iframe, используйте второй параметр в селекторе jQuery, чтобы вернуть область действия вашего селектора в главное окно. Вы должны сделать это следующим образом:
$("iframe[name=myframe]", window.opener.document).contents().doWhatever()
Если вы сделаете это для всех ваших селекторов, которым нужно обмениваться сообщениями, тогда все должно быть в порядке. Я использовал это раньше, и это работает.