私は常にDocument.Write()メソッドを使用してブラウザにデータを表示し、Alert()として使用しました。この種の使用は少し使用されていないようです。その主な用途について話しましょう。
document.write()メソッドは、2つの側面で使用できます。
1。ページの読み込みプロセスで、スクリプトで新しいページコンテンツを追加します。
2。遅延スクリプトを使用して、このウィンドウまたは新しいウィンドウのコンテンツを作成します。
この方法には、ウィンドウまたはフレームに書き込まれたHTMLコンテンツである文字列パラメーターが必要です。これらの文字列パラメーターは、文字列として値を持つ変数または式であり、書かれたコンテンツにはHTMLマークアップ言語が含まれることがよくあります。次のコードのように、アカデミックシステムフレームワークはサブページをロードします
コードコピーは次のとおりです。
<! - フレームをセルに入れます - >
<span style = "font-size:18px;">
<td valign = "top" id = "content-container">
<div id = "loading">
//効果アイコンを読み込みます
<img src = "images /loading.gif" />
</div>
<script type = "text/javascript">
// jsの出力frame関数を呼び出してフレームワークを形成する
index.outputiframe();
</script>
</td>
</span>
コードコピーは次のとおりです。
<span style = "font-size:18px;"> //出力フレーム
index.outputiframe = function(){
varスクロール= $ .isie6 == true? 「はい」:「自動 ';
document.write( '<iframe id = "content" marginwidth = "0" "marginheight =" 0 "frameborder =" 0 "scrolling ="' + scrolling + '"onload =" $(/'#loading/')。隠し(); $(this).show().show(); "src =" "
};
</span>
ページが読み込まれると、ブラウザ出力ストリームが自動的に閉じられます。この後、現在のページで動作するdocument.write()メソッドは、現在のページの内容(ソースドキュメントの変数または値を含む)をクリアする新しい出力ストリームを開きます。したがって、現在のページをスクリプトによって生成されたHTMLに置き換える場合は、HTMLコンテンツを接続して変数に割り当て、document.write()メソッドを使用して書き込み操作を完了する必要があります。
document.write()メソッドについて説明するもう1つのことは、その関連メソッドdocument.close()です。スクリプトがコンテンツをウィンドウ(このウィンドウまたは他のウィンドウであっても)に書き込み後、出力ストリームを閉じる必要があります。遅延スクリプトの最後のdocument.write()メソッドの後、document.close()メソッドが含まれていることを確認する必要があります。そうしないと、画像やフォームを表示することはできません。また、その後呼び出されたdocument.write()メソッドは、既存のコンテンツをクリアして新しい値を書き込むことなく、コンテンツをページに追加するだけです。
document.write()メソッドを実証するには、同じアプリケーションの2つのバージョンを提供します。 1つはスクリプトを含むドキュメントにコンテンツを書き、もう1つはコンテンツを別のウィンドウに書き込みます。
例1ドキュメントの新しいHTMLコンテンツを組み合わせたボタンを作成します。これには、新しいドキュメントタイトルのHTMLタグやタグの色属性が含まれます。
この例には、読者に馴染みのないオペレーター +=があります。右側の文字列を左側の変数に追加します。この変数は、文字列の保存に使用されます。この演算子は、いくつかの個別のステートメントを長い文字列に簡単に組み合わせることができます。 newContent変数に組み合わせたdocument.write()ステートメントを使用して、すべての新しいコンテンツをドキュメントに記述し、例1のコンテンツを完全にクリアします。
次に、document.close()ステートメントを呼び出して、出力ストリームを閉じる必要があります。ドキュメントをロードしてボタンをクリックすると、その結果、ブラウザのタイトルバーのドキュメントタイトルが変更されることに気付くことができます。元のドキュメントに戻ってボタンをもう一度クリックすると、2番目のページが元のドキュメントをリロードするよりも速く動的にロードされることがわかります。
例1現在のウィンドウでdocument.write()を使用します。
コードコピーは次のとおりです。
<html xmlns = "http://www.w3.org/1999/xhtml"> <title>同じdocに執筆</title>
<スクリプト言語= "javascript">
//関数を書き直します
関数RepeatWrite(){
//書かれたコンテンツを保存します
var newContent = "<html> <head> <title>新しいdoc </title> </head>"
newContent += "<body bgcolor = 'aqua'> <h1>このドキュメントは真新しい。</h1>"
newContent += "バックボタンをクリックして元のドキュメントを表示します。」
newContent += "</body> </html>"
//新しいコンテンツを書きます
document.write(newContent);
document.close();
}
</script>
</head>
<body>
<form>
<! - ボタンをクリックして、書き込み関数を呼び出す - >
<入力型= "button" value = "content" onclick = "repeatwrite()">
</form>
</body>
</html>
要約:
最近、document.writeを使用する静的リソースローダーを作成しています。いくつかのひねりとターンを経験した後、私はそのdocument.writeがまだいくつかのコンテンツを持っていることを発見したので、私は何かを投げて記録することにしました。