• ベストアンサー

これは何をするスクリプトですか?

<head> <script type="text/javascript"> <!-- function loading() { if (document.getElementById){ document.getElementById('load').style.visibility = 'hidden'; } else { if (document.layers){ document.layers['load'].visibility = 'hidden'; } else { document.all('load').style.visibility = 'hidden'; }}} // --> </script> </head> <body onload="loading()"> 詳細は略して書いています。 プログラムに全く詳しくないので、何をやろうとしているスクリプトなのかわかりません。 皆様には簡単かとは思いますが、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • OKbokuzyo
  • ベストアンサー率43% (130/296)
回答No.2

おそらくクロスブラウザを意識された記述だと思います。 ひとつ目のif文はブラウザがDOMに対応している場合のみ真となります。 最近のブラウザであればここを通ることになります。 ふたつ目のif文はdocument.layerですから、NNを意識したものと思われます。 DOM対応されていないNNといえばどのくらい前のバージョンかは忘れましたが‥(4くらい?) 最後にDOMに対応しておらず、またブラウザがNNでもなければ三つ目のif文を通ります。 ただし、document.allはIEでしか有効ではなかったはずなので、 DOM対応していないIEとNN以外のブラウザでは、この一連の処理に対しエラーを返す、あるいは無視すると思います。 IEとNNだけを意識したページなのでしょうか? クロスブラウザを意識するなら決して十分とは言いがたいですが、 用途のわからない質問なのでこのへんにしておきます

syuricyan
質問者

お礼

実はおはずかしながら自分で昔設置したもので、何かわからなくなってしまったのです。 皆さんのご意見を聞いてやっと思い出したのですが、 「ページが全て読み込まれる間の時間に、指定した文字もしくは図形などを表示する」 というスクリプトであることがわかりました。申し訳ありませんでした。ありがとうございました。

その他の回答 (1)

  • ANASTASIAK
  • ベストアンサー率19% (658/3306)
回答No.1

「ぺージが読み込まれたら、loadというidでタグ付けされている 要素を非表示にする」 というスクリプトです。

syuricyan
質問者

お礼

ありがとうございました。なんとなくわかったような気がします。

関連するQ&A

  • popupウィンドウでborderがcollapseなテーブル利用の問題

    popupウィンドウにテーブルを使用していて、 border-collapse: collapse のボーダーがある場合に、 初期表示時点で、そのボーダーのみが表示されてしまいます。 firefox,operaでは起きずIE6で起きます。 そこで非表示にするためのjavascript をonloadで動かしているのですが、 データ量の大きいページだと、表示された後に消えるのが 見えてしまい不細工です。 最初から枠が表示されないようなcssの指定方法はないでしょうか。 <html> <head> <script> <!-- function PopupOn(Msg){ if(document.all){ MyMsg = document.all(Msg).style; MyMsg.visibility = "visible"; } else if(document.layers){ MyMsg = document.layers[Msg]; MyMsg.visibility = "show"; } else if(document.getElementById){ MyMsg = document.getElementById(Msg).style; MyMsg.visibility = "visible"; } } function PopupOff(Msg){ if(document.all) document.all(Msg).style.visibility = "hidden"; else if(document.layers) document.layers[Msg].visibility = "hide"; else if(document.getElementById) document.getElementById(Msg).style.visibility = "hidden"; } //--> </script> <style> <!-- #poplink {position:absolute;left:0px; top:30px; z-index:9; visibility:hidden;} #poplink table {border-collapse: collapse; background-color: #ffffff;} #poplink td {border: 2px solid #00ffff; } //--> </style> </head> <body onload="PopupOff('poplink')" > <div id="poplink"> <table width="80px" height="80px"> <tr><td> [<a onClick="PopupOff('poplink')">閉じる</a>]<br /> ポップアップ </td></tr></table> </div> <a href="#" onClick="PopupOn('poplink')">リンク</a><br /> </body> </html>

    • ベストアンサー
    • HTML
  • マウスオンで説明文をページの真ん中に表示させたい!

    よろしくお願いします。 http://www4.ocn.ne.jp/~tomotan/tagpractice.html (↑)このサイトで <HTML> <HEAD> <SCRIPT><!-- function show(object) { if (document.layers && document.layers[object] != null) document.layers[object].visibility = 'visible'; else if (document.all) document.all[object].style.visibility = 'visible'; } function hide(object) { if (document.layers && document.layers[object] != null) document.layers[object].visibility = 'hidden'; else if (document.all) document.all[object].style.visibility = 'hidden'; } //--></SCRIPT> <STYLE><!-- .myStyle { position: absolute; visibility:hidden; top:150; left:300; } //--></STYLE> </HEAD> <BODY> <A HREF="#" onMouseover="show('myLayer1')" onMouseout="hide('myLayer1')">ここにマウス</A> <DIV ID="myLayer1" CLASS="myStyle"> Hello!! </DIV> </BODY> </HTML> を表示させると、「Hello!」の文字が「テキスト」の右側に表示されます。 そうじゃなくて、「Hello!」の右側にリンクを箇条書きに書き込んでいきたいんです。 で、リンクにマウスを乗せると左側にリンク先の説明が表示される・・・というふうにしたいんです。 お願いしますm(__)m

  • NN7.0でレイヤーの表示・非表示

    レイヤーの表示・非表示のスクリプトなんですが、 function OpenLayer() { //NNの場合 if(document.layers) { document.content_menu.visibility="visible"; } //IEの場合 else { content_menu.style.visibility="visible"; } } function CloseLayer() { //NNの場合 if(document.layers) { document.content_menu.visibility="hidden"; } //IEの場合 else { content_menu.style.visibility="hidden"; } } に書きました。 IE6.0では動作しますがNN7.0では何も起こりません。 どなたかどのように表記をすればいいのか教えてください。よろしくお願いします。

  • *.jsをHTMLで読み込んでHTMLに書かれたスクリプトを外部スクリプトで処理したいんですが。。

    JAVAスクリプトを外部ファイルに下記の様に書き出して外部ファイルをHTMLファイルに読み込んで、 読み込んだHTMLに書かれたスクリプトを外部ファイルで処理したいんですが 上手くいきません。読み込みの方法とか記述方法について教えてもらいたいのですが、よろしくお願いします。 [load.js] var win1; function openwin(){ win1 =window.top.frames[3]; } function loading_mes(message){ if(win1.closed==true){ openwin(); } win1.focus(); win1.document.open("text/html"); win1.document.write("<HTML><BODY bgcolor=\"#000000\" text=\"#ffffff\">"); win1.document.write("<p style='margin-top: -10'>"); win1.document.write("<H3>" + message + "</H3>"); win1.document.write("</p>"); win1.document.write("</BODY></HTML>"); win1.document.close(); } openwin(); loading_mes("load stert"); [HTMLでの処理したい事] <BODY onLoad="setTimeout('win1.close()',1000)"></BODY> <script type="text/javascript"> loading_mes("■■■■■■"); </script> <script type="text/javascript"> loading_mes("Loading Done"); </script> です。よろしくお願いします。どん詰まり状態で手も足も出ません(^^;

  • <html><head>

    <html><head> <style type="text/css"> <!-- #loading { position: absolute; /* ロード中に表示する文字列の絶対位置の設定(必須) */ top: 35%; /* 画面の上部からの文字の位置(必須) */ left: 45%; /* 画面の左側からの文字の位置(必須) */ font-style: italic; font-family: Verdana; } --> </style> <script type="text/javascript"> <!-- document.write('<style type="text/css">#doc { visibility: hidden; }<\/style>'); document.write('<div id="loading">Now Loading...<\/div>'); // ロード中に表示する文字列 var i = 0; var ele = document.getElementById("loading"); var str = ele.firstChild.data; function char_loop(ele, str) { ele.innerHTML = str.substring(0, i++ % str.length + 1); } setInterval("char_loop(ele, str);", 100); window.onload = function() { ele.style.display = "none"; document.getElementById("doc").style.visibility = "visible"; } // --> </script> </head> <body> <span id="doc"> ここに本文を表示 </span> </body> </html> 上のような、NewLoading... を作ってみたんですが、 画像のように表の内枠だけ残ってしまいます。 どうにかならないですかね。 ちなみにこの画像のURLは、↓こちらです。 http://shibaken.cool-biz.net/contents02.html お願いします。

  • javascriptをCSSに書き込むと動作しません。何故ですか?

    下記のjavascriptをCSSに書き込みました。拡張子は.jsとしました。 jsのフォルダにtopmuv.jsというファイル名にしました。 <script type="text/javascript"> <!-- function blink() { if (!document.all) { return; } for (i = 0; i < document.all.length; i++) { obj = document.all(i); if (obj.className == "blink") { if (obj.style.visibility == "visible") { obj.style.visibility = "hidden"; } else { obj.style.visibility = "visible"; } } } setTimeout("blink()", 500); } // --> </script> </head> <body onload="blink()"> htmlの読み込みは <LINK rel="stylesheet" href="js/topmuv.js" type="text/javascript"> と書いています。 この場合、上記javascriptのソースをシート上にダイレクトに書き込むと正常に動作しますがcssにすると動作しません。 何が悪いのでしょうか? 詳しい方宜しくお願いします。

  • ネスケ6以上でも動作させたいのですが・・・・・

    ネスケ6からlayerがサポートされていないということなのですが、 以下をどう書き直せば、ネスケ6以上でも動作するようになるのでしょうか? 単純にgetElementByIdに置き換えても動かないですよね・・・・力不足(T_T) どなたかお助けお願いいたします。 <STYLE TYPE="text/css"> <!-- #menu1 {position:absolute; top:160; left:80; width:92; font-size:10pt; color:#000000; background-color:#CFCFD8; visibility:visible} #tag1 {position:absolute; top:174; left:80; width:92; font-size:10pt; color:#000000; background-color:#CFCFD8; visibility:hidden} //--> </STYLE> <SCRIPT LANGUAGE="JavaScript"> <!-- types="hidden"; function pullDownMenu(tagName,x,y) {  if(types == 'hidden')types='visible';else types='hidden';  if(document.layers)document.layers[tagName].visibility=types;  if(document.all)document.all(tagName).style.visibility=types; } //--> </SCRIPT> </HEAD> <BODY> <P><IMG src="image.gif" border="0" width="285" height="39"></P> <DIV ID="menu1"> <A HREF="function voi(){};voi()" onClick="pullDownMenu('tag1');return false">わんにゃん</A> </DIV> <DIV ID="tag1"> <A href="dog.html"> わんこ </A><BR> <A HREF="cat.htm"> にゃんこ </A><BR> <A HREF="kitten.htm"> こにゃんこ </A><BR> </DIV> </BODY>

  • Netscape4でスタイルシートを設定すると、スクリプトが動作しません。

    お世話になっています。 現在、スタイルシートのvisibility属性を利用してリンクをクリックすると、見えなかったテーブルを表示させる、というサンプルを作っています。 しかし、テーブル内にスタイルシートの設定を入れた途端、Netscape4のみ動作しなくなりました。(「#この部分が~」のところです) 原因が分かれば、教えていただきたいと思います。 ソースは次の通りです。 function hyoji(lay){ if(document.getElementById) { document.getElementById(lay).style.visibility = 'visible'; } else if(document.all) { document.all(lay).style.visibility = 'visible'; } else if(document.layers) { document.layers[lay].visibility = 'show'; } } <A HREF="javascript:hyoji('test0')">ZERO</a>  <A HREF="javascript:hyoji('test1')">ONE</a> <A HREF="javascript:hyoji('test2')">TWO</a> <div id = "test0" style="position:absolute; top:100px; left:100px ;visibility:hidden"> <table border=3> <tr> <td bgcolor=teal>ZERO</td> </tr></table></div> <div id = "test1" style="position:absolute; top:200px; left:100px ;visibility : hidden"> <table border=3> <tr><td bgcolor=hotpink> #この部分が問題? <span style="line-height:120%">ONE</font></td> </tr></table></div> <div id = "test2" style="position:absolute; top:150px; left:100px; visibility : hidden"> <table border=3> <tr><td bgcolor=hotpink>TWO</td></tr> </table> </div>

  • webサイトで文字にマウスを重ねた時に文章を表示させたい

    ウェブサイトで、JavaScriptを使用し、「挨拶」の文字にマウスを重ねた時、「こんばんは。」と表示されるようにしたいのですが、上手くいきません。 下記は私が記述したソースになります。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー <html> <head> <title>テスト</title> <script language="JavaScript"> <!--//レイヤー表示 function Lay_View(name,sw) { if (document.all) { //IE用 document.all[name].style.visibility=sw; } else if (document.layers) { //NC用 document.layers[name].visibility=sw; } } //--> </script> </head> <body ONLOAD="preloadImages();"> <!-- 表示するレイヤー --> <div id="link2" style="position:absolute; width:600px; height:80px; z- index:1; left: 80px; top: 600px; visibility: hidden"> こんばんは。</div> <!-- ここまで --> <a href="http://www.geocities.co.jp/Milkyway/1958/" onMouseOver="Lay_View('link2','visible');Lay_View('linka','hidden');" onMouseOut="Lay_View('link2','hidden');Lay_View('linka','visible');" > 挨拶</a> </body> </html> ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー この場合IEでは、ちゃんと表示されるのですが、Firefox等で見た場合、何も表示されません。どうすれば、他のwebブラウザにも対応できるのでしょうか? JavaScriptは初心者なので、修正すべき場所とコードを詳しく教えて頂けると助かります。よろしくお願い致します。

  • あるscriptを使うとIEだけ横スクロール

    こんにちは。 質問させていただきます。 下記URLのJavascriptでタブ切り替えをしています。 http://nais.to/~yto/tools/css_tabs/ 導入事態はとても簡単に出来たのですが、 何故かIEで表示するとブラウザ全体に横スクロールが出てしまいます。 上記のスクリプトを切ると横スクロールは消えます。 javascriptの中身はこんな感じです。 // bpref = tab body prefix, hpref = tab header prefix function seltab(bpref, hpref, id_max, selected) { if (! document.getElementById) return; for (i = 0; i <= id_max; i++) { if (! document.getElementById(bpref + i)) continue; if (i == selected) { document.getElementById(bpref + i).style.visibility = "visible"; document.getElementById(bpref + i).style.position = ""; document.getElementById(hpref + i).className = "open"; } else { document.getElementById(bpref + i).style.visibility = "hidden"; document.getElementById(bpref + i).style.position = "absolute"; document.getElementById(hpref + i).className = "close"; } } } とても軽量で余計な機能も無いので気に入ってるんですが、 横スクロールを確認してからは他のスクリプトで対応してます。 jsにお詳しい方がいらっしゃれば、どうかご教授下さい。 よろしくお願いいたします。

専門家に質問してみよう