メニューが表示されません。



0   名前: こと : 2007/04/02(月) 16:24  ID:bSRGhgbM sub-zH
はじめまして。JavaScript初心者です。
サイト内すべてのページの上部にメニューを表示させたいと思い、初めは全部のページにHTMLを記述していたのですが、この方法だとソースが見にくくなるので他の方法を調べてみました。
するとちょうど私の思っていたようなことが実現できるサイト(下記のURL)を見つけ、そこを参考にしてやり直したところ、メニュー部分がなくなってしまいました。
http://www.esli.co.jp/javascript/dhtml/gaibu_innerhtml.html(方法bです)
私の書いたものも下に載せます。
どこがおかしいのか、また他にもよい方法があれば教えて下さい。

↓JavaScript外部ファイル
function menuT() {
 document.write("<TABLE>"); 
 document.write("<TR>"); 
 document.write("<TD><A HREF='index.html'><img src="画像ファイル" width="150" height="72" border="0" onmouseover="this.src = '画像ファイル'" onmouseout="this.src = '画像ファイル'" alt=""></A></TD>"); 
 document.write("<TD>・・<A HREF='リンク先'>文</A>・</TD>");
|
|同じなので省略
|
 document.write("</TR>");   
 document.write("</TABLE>");
}


↓HTML部分
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<HTML>
 <HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Shift_JIS">
  <TITLE>タイトル</TITLE>
  <LINK rel="stylesheet" href="body.css" type="text/css">
  <STYLE type="text/css">
  <!--
   .midashi{
   width:35%;
   font-weight:bold;
   padding:3px;
   border-bottom:10px #CCFFCC dotted;
   }
   span{color:#CC3333;}
   -->
  </STYLE>
  <SCRIPT LANGUAGE="JavaScript" src="menu.js">
  </SCRIPT>
  <SCRIPT TYPE="text/javascript">
  <!--
   function disp(url){ 
   window.open(url, "window_name", "width=410,height=560,scrollbars=no"); 
   } 
   //-->
  </SCRIPT>
 </HEAD>
 <BODY>
  <div id="outline">
  <div class="header">
   <SCRIPT LANGUAGE="JavaScript">
    menuT();
   </SCRIPT>
  </div>

  <div class="outline-margin">
  <div class="outline-margin">
   <br>
   <H2>見出し</H2>
   <br>
   <div class="midashi">文</div><br>
    文
    |
  |中略
  |
    <table> 
    <tr><td><A HREF="javascript:disp('ファイル')">文</A></td></tr>
    </table><br><br>
  </div><!-- end outline-margin -->
  <div class="footer">
  </div><!-- end footer -->
  </div><!-- end outline -->
 </BODY>
</HTML>

長くなってしまってすみません。

1   名前: 匿名 : 2007/04/02(月) 16:24  ID:m3veXKiT sub-Ds
4行目
><img src="画像ファイル" width="150"

ここまで来ると、JavaScriptはハタと困ってしまいます。
ダブルクォーテーションは何のためでしたっけ?

2   名前: こと : 2007/04/02(月) 16:24  ID:/djOYSxl sub-zH
匿名さま、ありがとうございます。
四行目のダブルクオーテーションをシングルクオーテーションに変えたところメニューが表示されました。
ただ、画像のロールオーバー効果が消えてしまいました。
もともと五行目のonmouseoverからシングルクオーテーションを使っているからだと思いそういった場合はどうするのか調べてみたところ、入れ子になっているほうの前に「\」をつけるらしいとのことでつけてみました。
が、やはりうまくいきません。
下の記述に問題があるのでしょうか?それとも他がおかしいのでしょうか?
<img src='画像' 〜中略〜
onmouseover='this.src = \'画像\'' onmouseout='this.src = \'画像\''〜>

一覧へ戻る