просить:
В веб-страницу встроены два фрейма, как показано ниже. Теперь я хочу написать фрагмент кода в b.htm, чтобы изменить высоту фрейма верхней панели (изначально 120). Как этого добиться? Лучше всего записать конкретный процесс.
Кроме того, если этого невозможно добиться, есть ли способ использовать изображение в b.htm по всему кадру Main, чтобы закрыть a.htm (цель состоит в том, чтобы сделать a.htm невидимым)?
Дополнительный вопрос: a.htm нельзя изменить.
Пожалуйста, помогите мне.
=============================================== ====
<html>
<голова>
<title></title>
</голова>
<тело>
<frameset rows="120, *">
<frame name="Topbar" src="a.htm" прокрутка="Нет">
<frame name="Main" src="b.htm" прокрутка="Да">
</frameset>
</тело>
</html>
=============================================== ====
Дополнительный вопрос: Спасибо, ccyingfu, но набор фреймов моего встроенного фрейма не может быть изменен. То есть приведенный выше код не может быть изменен и идентификатор не может быть добавлен. Что мне делать? Кроме того, вы использовали кнопку для выполнения изменения. Что, если я захочу выполнить его, как только открою веб-страницу?
отвечать:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml ">
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Документ без названия</title>
</голова>
<frameset rows="120, *">
<frame name="Topbar" src="a.htm" прокрутка="Нет">
<frame name="Main" src="b.htm" прокрутка="Да">
</frameset><noframes></noframes>
</html>
</html>
===============================
б.хтм
====================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml ">
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Документ без названия</title>
<тип сценария="текст/javascript">
изменение функции (высота) {
window.parent.document.getElementsByTagName("frameset")[0].setAttribute("rows",height+"px,*");
}
window.onload = функция(){
alert("Исходная высота"+window.parent.document.getElementsByTagName("frameset")[0].getAttribute("rows").substring(0, 3));
Change(150);//Устанавливаем высоту 150 пикселей
alert("Измененная высота"+window.parent.document.getElementsByTagName("frameset")[0].getAttribute("rows").substring(0, 3));
}
</скрипт>
</голова>
<тело>
</тело>
</html>
=========
Вы попробуйте это, это абсолютно возможно. Это также отвечает вашему требованию не менять набор фреймов. Я только что добавил в b.htm фрагмент js-кода, чтобы изменить высоту набора фреймов при загрузке b.html. Получилось 120, но через js поменяли на 150. Можно изменить 150 на большее значение, чтобы увидеть эффект.