htmlファイルをアクセスしたときに、アクセスするごとにランダムでFlashを表示したいのですが、Netscape Communicator4.7で動作確認をしたところ、
表示がうまくできませんでした。ネスケに関して表示処理の際に何か足りないタグがあるのでしょうか?それとも単純に書き方が間違っているのでしょうか?

---------------------------------------------------------------------
<script language="JavaScript">
<!--
img = new Array();
img[0] = "movie1.swf";
img[1] = "movie2.swf";
img[2] = "movie3.swf";
img[3] = "movie4.swf";

function flash(){
kazu = img.length;
i = Math.floor(Math.random()*kazu);
document.write("<OBJECT classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://active.macromedia.com/flash2/cabs/swflash … ID=\"movie1\" WIDTH=\"600\" HEIGHT=\"311\">");
document.write("<PARAM NAME=\"movie\" VALUE=\""+img[i]+"\">");
document.write("<PARAM NAME=\"quality\" VALUE=\"best\">");
document.write("<PARAM NAME=\"bgcolor\" VALUE=\"#FFFFFF\">");
document.write("<EMBED src=\""+img[i]+"\" quality=\"best\" bgcolor=\"#FFFFFF\" WIDTH=600 HEIGHT=311 TYPE=\"application/x-shockwave-flash\" PLUGINSPAGE=\"http://www.macromedia.com/shockwave/download/ind …);
document.write("</OBJECT>");
}
</head>
<body>
<script language="JavaScript" type="text/javascript">
<!--
flash();
--></script>
</body>
---------------------------------------------------------------------

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんにちは。


一つ確認ですが、<head>タグ内のJavaScriptは、ちゃんと閉じてますよね???(書き込みされているのは閉じてないので)
で、おそらく、

<script language="JavaScript" type="text/javascript">
<!--
flash();
--></script>

の部分。

<script language="JavaScript" type="text/javascript">
<!--
flash();
//-->
</script>

では?
コメントアウトの『//』が抜けているのが原因ではないでしょうか。
『//』入れたらちゃんと表示されましたよ。
ではでは。
    • good
    • 0
この回答へのお礼

ありがとうございました!
お言葉通りに「//」が抜けていたために
表示されていませんでした!!
コメントアウトには今後気を付けます。
本当にありがとうございました!

お礼日時:2002/03/28 08:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q 内に書くことはできません」

元アルバイト先に頼まれてサイトを作り運営しているのですが、わからないことがあるので教えて下さい。

サイトはXHTML1.0 Transitional で作っており、ここに、http://fmono.sub.jp/ の「w3Analyzer」を組み込みアクセス解析をしています。サイト自体もこのアクセス解析も正常に動作しています。
ただ、このサイトをhttp://openlab.ring.gr.jp/k16/htmllint/htmllint.htmlで構文チェックすると、アクセス解析のタグにエラー「<img>を~行目の<script>~</script>内に書くことはできません。」が表示されてしまいます。
エラーが表示されるタグは下記のようなものです。

<script type="text/javascript">
document.write('<img src="http://~/w3a/writelog.php?ref='+document.referrer+'" width="1" height="1" />');
</script> >

アクセスログは普通に取得できているので問題ないのですが、もし上記エラーを回避する方法があればご教授下さい。よろしくお願いします。

元アルバイト先に頼まれてサイトを作り運営しているのですが、わからないことがあるので教えて下さい。

サイトはXHTML1.0 Transitional で作っており、ここに、http://fmono.sub.jp/ の「w3Analyzer」を組み込みアクセス解析をしています。サイト自体もこのアクセス解析も正常に動作しています。
ただ、このサイトをhttp://openlab.ring.gr.jp/k16/htmllint/htmllint.htmlで構文チェックすると、アクセス解析のタグにエラー「<img>を~行目の<script>~</script>内に書くことはできません。」が表示されてし...続きを読む

Aベストアンサー

XHTML には「ホンモノの XHTML」と「ニセモノの XHTML」があります。「ホンモノの XHTML」とは application/xml または application/xhtml+xml として識別されるもの、「ニセモノの XHTML」は text/html で識別されるものです。

※実際にはどちらも本物です。ここでは「HTML 互換として処理される XHTML」を「ニセモノ」、「XML として解析される XHTML」を「ホンモノ」と、カタカナ&カッコ付きで書いています。

「ホンモノの XHTML」として見れば、質問文のソースは妥当性違反です。なぜなら、img 要素のタグがエスケープされていないため、これがスクリプトの一部ではなく文書構成要素だと判断されるからです。XHTML 1.0 のスキーマは、script 要素内に img 要素が出現することを許していません。もちろん、スクリプトとしても正しく動作しません。

従って、XML のルールに従ってエスケープする必要があります。特に「<」と「&」は必ずエスケープしなければなりません。

document.write('&lt;img .... />');

ですが面倒なことに、「ニセモノの XHTML」ではこれが動作しなくなります。「ニセモノの XHTML」は、HTML との互換性のために script 要素内の「<」「&」をうまく扱ってくれるのですが、それが仇となり、上記では「&lt;」が「<」に戻りません。

ならば、コメント区間にするのはどうでしょう。XML でもコメント内なら「<」「&」が現れても大丈夫です(ただし「--」だけは駄目です)。

<script type="text/javascript"><!--
document.write('<img .... />');
//--></script>

「ニセモノの XHTML」ならこれでも構いません。しかし、「ホンモノの XHTML」では、コメントは本当に破棄されてしまい、上記では動作すらしなくなります。

そこで、XML/HTML のルールを使わず、JavaScript のルールでエスケープすることを考えます。

document.write('\u003Cimg .... />');

これなら大丈夫でしょう。XML/HTML に限らず、言語が混在する際は必ず適切なエスケープを施す必要があります。エスケープを避けたければ外部スクリプトにして下さい。


なお、ここには別の問題があります。そもそも「ホンモノの XHTML」では、document.write を使用できません。これは HTML 互換の機能だからです(HTML5 に明記されています)。

XHTML を採用するのであれば、それが「ホンモノ」でも「ニセモノ」でも大丈夫なよう、document.write に頼らないコードを作成して下さい。あるいは try...catch で括るなどして、「ニセモノ」として処理されたときのみコードが動作するよう工夫して下さい。あるいはいっそ、XHTML を止めるのも 1 つの選択でしょう。

XHTML には「ホンモノの XHTML」と「ニセモノの XHTML」があります。「ホンモノの XHTML」とは application/xml または application/xhtml+xml として識別されるもの、「ニセモノの XHTML」は text/html で識別されるものです。

※実際にはどちらも本物です。ここでは「HTML 互換として処理される XHTML」を「ニセモノ」、「XML として解析される XHTML」を「ホンモノ」と、カタカナ&カッコ付きで書いています。

「ホンモノの XHTML」として見れば、質問文のソースは妥当性違反です。なぜなら、img 要素のタ...続きを読む

Qタグをでくくりたい

Javascript初心者を脱出したい者です。

<img>タグをgetElementsByTagNameで取得し、
<span class="align_left"><img .... /></span> みたいに囲いたいと考えています。

条件として、<img>タグの親ノードは<p>タグです。
全くノウハウは知りませんが、以下のような考え方で実現できるのでしょうか?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert nextContent</title>
<script type="text/javascript">
<!--
  window.onload = function() {
    var out_span = document.createElement('span');
    out_span.setAttribute('class', 'align_left');

    var list = document.getElementsByTagName('img');
    var img = list[0];
    /* この後、
      どうやって、out_span を挿入すればよいのか?
     */
  }
//-->
</script>
</head>
<body>
<h1> IMGタグに親ノードを追加したい </h1>
<p>
文ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー。
<img src="../images/logo.gif" alt="Logo" />
</p>
</body>
</html>

★ インデントは全角スペースで行っております。

ご教示お願いします。

Javascript初心者を脱出したい者です。

<img>タグをgetElementsByTagNameで取得し、
<span class="align_left"><img .... /></span> みたいに囲いたいと考えています。

条件として、<img>タグの親ノードは<p>タグです。
全くノウハウは知りませんが、以下のような考え方で実現できるのでしょうか?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert nextContent</title>
<script type="text/javascript">
<!--
  window.onload = function() {
    v...続きを読む

Aベストアンサー

// この後...
out_span.appendChild(img.parentNode.replaceChild(out_span, img));

nodeObject.parentNode
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-parentNode
nodeObject.replaceChild( newChild, oldChild )
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-replaceChild
nodeObject.appendChild( newChild )
http://www2u.biglobe.ne.jp/~oz-07ams/prog/dom-ref/Core/Node.html#Node-appendChild

Q

▼次のようにページ内のdivタグのidの名前によって、formタグ内の要素をdisableにすることはJava scriptによって可能でしょうか?

<div id="AA">のとき、別の場所にある<form id="BB">内のselect要素などすべての要素をdisableにする。

また同時に、id="BB"に指定したスタイルシートの記述を書き換えることは可能でしょうか?

何かよい方法をご存知でしたら教えてください。よろしくお願いいたします。

Aベストアンサー

>なぜか時々エラーが出ます。
ウチでちょっと試した程度ではエラーが発生しませんでした。
できましたら、発生したときのメッセージや場所また、ブラウザの種類なども教えてください。

以下は、予防的な意味での注意点についてちょっと書きます。
>return false;

は、必要ないです。
書かない方がいいと思います。
==nullの場合の処理が必要ないなら
!=nullにすればよいです。
もしくは
return false;でなくて
;
のように空文でもよいです。
あと、idに使っている名前と同じ名前を変数名として使わない方が良いです。
つまり、
id="soldout"の時に
var soldout;という風にはしない方が良いです。
同じでなければ、cartFormでもなんでもかまいません。
あと、scriptは、
<!--
(スクリプトの中身)
//-->
のように
<!--
//-->
で囲むようにします。

getElementById
は、ブラウザやのブラウザのバージョンによっては使えないことがあります。
その場合は、使えるかどうかを調べる必要があります。

<script type="text/javascript">
<!--
function stockStatus (num){
var f=document.getElementById("soldout");

if(f!=null){
for (var i =0; i<=f.length -1 ;i++){
f.elements[i].disabled=num;
}
}
}
//-->
</script>

>なぜか時々エラーが出ます。
ウチでちょっと試した程度ではエラーが発生しませんでした。
できましたら、発生したときのメッセージや場所また、ブラウザの種類なども教えてください。

以下は、予防的な意味での注意点についてちょっと書きます。
>return false;

は、必要ないです。
書かない方がいいと思います。
==nullの場合の処理が必要ないなら
!=nullにすればよいです。
もしくは
return false;でなくて
;
のように空文でもよいです。
あと、idに使っている名前と同じ名前を変数名として...続きを読む

Qタグの alt= の値をキャプションに

初心者を抜け出そうとしている者です。

画像の下にキャプションを付けたいのですが、
alt= の値を利用しようと思っています。
下記のようなスクリプトで実現できる方法はあるのでしょうか?

<html>
<head>
<script type="text/javascript">
<!--
  window.onload = function() {

    var list = document.getElementsByTagName('img');
    
    for (var i=0; i < list.length; i++) {
      /* ココで、それぞれの<img> の alt=の値を取り出し、
        それぞれの<img>の直後に、
        '<br><span> alt の値 </span>' を挿入したい
       */
    }
  }
//-->
</script>
</head>
<body>
<h1>テスト IMGタグの後に文字列出力</h1>
<img src="../images/logo1.gif" alt="Logo1" />
<img src="../images/logo2.gif" alt="Logo2" />
</body>
</html>

※ 上記インデントは全角スペースで書いております。

上のような方法以外でもかまいませんので、
スクリプト例を書いていただけると嬉しいです。
よろしくお願いします。

初心者を抜け出そうとしている者です。

画像の下にキャプションを付けたいのですが、
alt= の値を利用しようと思っています。
下記のようなスクリプトで実現できる方法はあるのでしょうか?

<html>
<head>
<script type="text/javascript">
<!--
  window.onload = function() {

    var list = document.getElementsByTagName('img');
    
    for (var i=0; i < list.length; i++) {
      /* ココで、それぞれの<img> の alt=の値を取り出し、
        それぞれの<img>の直後...続きを読む

Aベストアンサー

定義通りつくるとこんな感じ。でもちょっと変ですね・・・

<script>
window.onload = function() {
var list = document.getElementsByTagName('img');
for (var i=0; i < list.length; i++) {
var alt=list[i].getAttribute("alt");
if(alt){
var span=document.createElement("span");
span.appendChild(document.createTextNode(alt));
list[i].parentNode.insertBefore(span,list[i].nextSibling);
var br=document.createElement("br");
list[i].parentNode.insertBefore(br,list[i].nextSibling);
}
}
}
</script>
<h1>テストIMGタグの後に文字列出力</h1>
<img src="1.jpg" alt="Logo1" />
<img src="2.jpg" alt="Logo2" />
<img src="3.jpg" />

定義通りつくるとこんな感じ。でもちょっと変ですね・・・

<script>
window.onload = function() {
var list = document.getElementsByTagName('img');
for (var i=0; i < list.length; i++) {
var alt=list[i].getAttribute("alt");
if(alt){
var span=document.createElement("span");
span.appendChild(document.createTextNode(alt));
list[i].parentNode.insertBefore(span,list[i].nextSibling);
var br=document.createElement("br");
list[i].parentNode.insertBefore(br,list[i].nextSibling);
...続きを読む

Qdocument.writeをinput type="text"の value値に

超初心者です。
下記の式にてPHPよりjavascriptにてHTMLに書き出しできましたが
<script type="text/javascript" src="./jsphptest.php?long=3" ></script>この値をHTMLのinput type="text"の value値にデフォルトとして入れたいと思っていますが、どうすればできるのか分かりません。できればボタン等を介さずページをロードすればこPHPからjavascriptのdocument.write値がvalue値に入って欲しいと思っています。簡単なようで難しいことなのでしょうか?どうかご教授よろしくお願いいたします。

Aベストアンサー

それからどうでもいいけど
htmlのタグの順番が適当ですね。


人気Q&Aランキング

おすすめ情報