JavaScript視窗功能指南之在視窗中書寫內容 (轉)

worldblog發表於2007-12-04
JavaScript視窗功能指南之在視窗中書寫內容 (轉)[@more@]script視窗功能指南之在視窗中書寫內容
(作者:聽風編譯 2001年01月19日 11:35)

  window.open()方法開啟一個新視窗,document.open()方法開啟一個新文件,在其中可以使用write()或者writeln()方法書寫內容,它的語法是:

  oNewDoc = document.open(sMimeType[, sReplace]);

  sMype是一個字串,它定義了MIME型別。Navigator支援幾種不同的MIME型別,但是Internet Explorer當前僅僅支援“text/html”。sMineType引數是可選的。第2個引數也是一個字串,它定義了被書寫的新文件是否要替換當前文件在歷史記錄中的位置。如果想達到替換目的,就使用字串“replace”。

  “replace”基本上使用於擁有空文件或者“about:blank”URL的視窗。定義了“replace”後,write()方法就可以在這個視窗中建立HTML內容,並且替換當前URL在歷史記錄中的位置。如果沒有定義“replace”,建立的HTML就有它自己的歷史位置,可以點選後退按鈕向前直到空為止。

  看看下面的指令碼段:

  var oNewDoc = document.open("text/html", "replace");

  var sMarkup = "New Document";

  sMarkup += "Hello, world!
Return";

  oNewDoc.write(sMarkup);

  oNewDoc.close();

  如你所見,我們在新文件中包含了一個連結,所以你就可以返回這個頁面。如果你點選了的後退按鈕,瀏覽器就返回到這個頁面之前的頁面。因為我們使用了“replace”引數,新文件(被書寫的文件)替換了當前文件在歷史記錄中的位置,所以點選後退按鈕不會返回到當前頁面(包含指令碼程式的頁面)。下面的按鈕同樣的指令碼程式,但是沒有“replace”引數,所以,你可以透過點選瀏覽器的後退按鈕返回到這個頁面。

  以下是這個按鈕的:

  

  


  正如你在上面2個例子中看到的,最後一個語句關閉了輸出流:

  oNewDoc.close();

  通常,document.close()方法關閉輸出流,並且強迫傳送的資料顯示出去。

在新視窗中書寫內容
  看看下面的指令碼程式:

  var win = window.open("", "win", "width=300,height=200"); // a window

  win.document.open("text/html", "replace");

  win.document.write("New Document

   Hello, world!");

  win.document.close();

  第1個語句開啟一個新視窗,它使用了一個空文件引數(“”),返回值分配給變數win。然後,我們使用新視窗的文件win.document,在其中書寫一些HTML。定義“replace”是非常必要的,因為我們不想讓一個空白頁面在歷史記錄中佔有一項。

  因為我們處理同樣的document物件,也許也要分配給它另外一個變數:

  var win = window.open("", "win", "width=300,height=200"); // a window object

  var doc = win.document;

  doc.open("text/html", "replace");

  doc.write("New DocumentHello,

   world!");

  doc.close();

  我們也可以使用with語句:

  var win = window.open("", "win", "width=300,height=200"); // a window object

  with (win.document) {

   open("text/html", "replace");

   write("New DocumentHello,

     world!");

   close();

  }

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-988295/,如需轉載,請註明出處,否則將追究法律責任。

相關文章