欢迎光临

木子屋

标题: JavaScript窗口功能指南之在窗口中书写内容

作者: admin

日期: 2006-11-27 00:25 AM

分类: 脚本语言

内容: window.open()方法打开一个新窗口，document.open()方法打开一个新文档，在其中可以使用write()或者writeln()方法书写内容，它的语法是：
oNewDoc = document.open(sMimeType[, sReplace]);
sMineType是一个字符串，它定义了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 = "<HTML><HEAD><TITLE>New Document</TITLE></HEAD>";
sMarkup += "<BODY>Hello, world!<BR><A HREF='write.html'>Return</A></BODY></HTML>";
oNewDoc.write(sMarkup);
oNewDoc.close();
如你所见，我们在新文档中包含了一个链接，所以你就可以返回这个页面。如果你点击了浏览器的后退按钮，浏览器就返回到这个页面之前的页面。因为我们使用了"replace"参数，新文档(被书写的文档)替换了当前文档在历史记录中的位置，所以点击后退按钮不会返回到当前页面(包含脚本程序的页面)。下面的按钮执行同样的脚本程序，但是没有"replace"参数，所以，你可以通过点击浏览器的后退按钮返回到这个页面。
以下是这个按钮的源代码：
<script language=JavaScript>
<!--
function writeDocBack() {
var oNewDoc = document.open("text/html");
var sMarkup = "<HTML><HEAD><TITLE>New Document</TITLE></HEAD>";
sMarkup += "<BODY>Hello, world!</BODY></HTML>";
oNewDoc.write(sMarkup);
oNewDoc.close();
}
// -->
</script>
<form><input onClick=writeDocBack() type=button value="Write Document" name="button2"></form>
正如你在上面2个例子中看到的，最后一个语句关闭了输出流：
oNewDoc.close();
通常，document.close()方法关闭输出流，并且强迫发送的数据显示出去。
在新窗口中书写内容
看看下面的脚本程序：
var win = window.open("", "win", "width=300,height=200"); // a window object
win.document.open("text/html", "replace");
win.document.write("<HTML><HEAD><TITLE>New Document</TITLE></HEAD>
<BODY>Hello, world!</BODY></HTML>");
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("<HTML><HEAD><TITLE>New Document</TITLE></HEAD><BODY>Hello,
world!</BODY></HTML>");
doc.close();
我们也可以使用with语句：
var win = window.open("", "win", "width=300,height=200"); // a window object
with (win.document) {
open("text/html", "replace");
write("<HTML><HEAD><TITLE>New Document</TITLE></HEAD><BODY>Hello,
world!</BODY></HTML>");
close();
}

+ 查看当前日志评论 (1)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.609 ms

返回

标题: JavaScript窗口功能指南之在窗口中书写内容

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.609 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.641 ms

返回