最基本的JavaScript命令之一是document.write这个命令只是将指定的文本内容打印到页面上。若要逐字打印文本,请在打印的文本字符串上加上单引号。
载人页面后,浏览器输出流自动关闭;之后,任何在当前页面上操作的document.write()方法都会打开一个新的输出流。它将清除当前页面的内容(包括源文档的任何变量或值)。因此,如果要用脚本生成的HTML替换当前页面,必须将HTML内容连接到一个变量,并使用document.write()方法完成写入操作。不需要清除文档,打开新的数据流,一个document.write()调用就可以完成所有操作。
关于document.write()方法还有一点需要注意,那就是它的相关方法document.close()。脚本将内容写入窗口(无论是该窗口还是其他窗口)后,必须关闭输出流。延时脚本的最后一个document.write()方法之后。必须确保包含document.close()方法,否则无法显示图片和表单。此外,任何后来调用的document.write()方法都只会将内容追加到页面,而不会清除现有内容来写入新值。
document.write方法
最基本的JavaScript命令之一是document.write这个命令只是将指定的文本内容打印到页面上。若要逐字打印文本,请在打印的文本字符串上加上单引号。
复制代码如下:document.write(Hello World!);
上面的js代码将显示“Hello World!”在页面上。您可以使用document.write来打印变量。输入不带引号的变量名,如下所示:
复制代码如下:var mytext= Hello againdocument.write(我的文本);
注意:如果变量名被引用,变量名将被打印(变量值不会被打印)。您可以使用“”符号将变量值与文本字符串连接起来。
复制代码如下:var colour1= purplevar colour2= pinkdocument . write( pcolour 1: colour 1 br colour 2: colour 2 /p );
打印结果如下:
颜色1:紫色颜色2:粉色
document.write也多用于加载js广告
复制的代码如下:document . write( scri pt src= 3359 www.jb51.net/ad.js type= text/JavaScript /s script );document . write( scri pt src= https://www . jb51 . net/ad . js type= text/JavaScript /s script );document . write( scri pt src= https://www . jb51 . net/ad . js type= text/JavaScript /s script );
一般外面用单引号(双引号)连接字符,里面用双信号(单引号),这样不会错。当然也可以使用转义字符,但是后期修改比较麻烦。
document.write这种方式加载的js是异步的
复制代码如下:DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www . w3 . org/TR/HTML 4/strict . DTD HTML lang= ru head title/title meta http-equiv= Content-Type Content= text/HTML;charset=GB 2312 /head script type= text/JavaScript 函数load(js){ var s=document . createelement( script );s.setAttribute(type , text/JavaScript );s.setAttribute(src ,js);var head=document . getelementsbytagname( head );head[0]。appendChild
}函数write(js){ document . write( script type= text/JavaScript src= js /script );}
load( https://www . jb51 . net/js/2011/jquery-1 . 5 . 1 . min . js );//写( https://www . jb51 . net/js/2011/jquery-1 . 5 . 1 . min . js );
/script script alert($);/script问:如果用createElement(script )加载,调用函数会报错,而用document.write不会报错?
回答:
对于动态创建的js引用,不同的浏览器对楼主的写法有不同的反应。对于FF Opera,load方法是阻塞的,所以可以输出alert($),而对于IE Chrome Safria,它是非阻塞的所以会报错。对于所有浏览器,document.write方法都是阻塞的,即同步的,因此alert($)将输出正确的结果。