0

動作しない完全な最新のコードを次に示します。メイン ウィンドウの 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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Website</title>
<link rel="stylesheet" type="text/css" href="css/main.css" />
</head>

<body background="core_rec/web_res/cf2.jpg">
<center>
<table width="720" cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="180"><img src="core_rec/logos/metaltop.png" /></td>
<td colspan="3"><img src="core_rec/web_res/title.png" align="bottom"/></td>
</tr>
<tr>
<td width="180"><img src="core_rec/logos/metalbottom.png" /></td>
<td width="70"><center><font id="menutext">Menu</font></center></td>
<td width="100"><center><font id="menutext">Info</font></center></td>
<td width="200"><center><font id="menutext">Products/Services</font></center></td>
<td width="170"><center><font id="menutext">Contact</font></center></td>
</tr>
</table>
<br /><br />
<table height="80%" width="720">
<tr>
<td width="140"><iframe src="iframes/menus/main.html" width="140" id="sidebar"></iframe></td>
<td width="540"><iframe src="iframes/bodies/main/main.html" width="540" name="bodyframe" id="bodyframe"></iframe></td>
</tr>
</table>
</center>
</html>

これが menus/main.html です。ボタンが含まれています。

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>iFrame Main</title>
<link rel="stylesheet" type="text/css" href="../../css/main.css" />
</script>
</head>

<body bgcolor="#000000">
<center>
<font id="sidebartext">
Main<br /><br />
Other Feeds<br /><br />
<button onclick="parent.document.getElementById('bodyframe').src='../bodies/main/othersites.html'">Other Sites</button><br /><br />
</font>
</center>
</body>
</html>

メニュー枠のボタンを押しても本体枠が変わらない。

4

2 に答える 2

0

スペルを間違えましたgetElementById:最後の文字dは大文字であってはなりません。

ブラウザのjavascriptのグローバルオブジェクト(少なくとも、window /(i)frameごとにグローバル)であるため、を書く代わりに、window.document.getElementByIdを書くことができます。document.getElementByIdwindow

http://jsfiddle.net/kNrVL/

于 2012-06-11T11:40:39.327 に答える
0

これを単純なサーバーで実行してテストしてください。多くのブラウザーには、iframe に関して制限があります。

file:// プロトコルを使用すると、多くのファイルが適切に機能しません。このプロトコルは、html ファイルを直接開いた場合に使用されます (つまり、サーバー経由ではありません)。

于 2012-06-11T20:07:08.257 に答える