js document.write()使用介紹
在載人頁(yè)面后,瀏覽器輸出流自動(dòng)關(guān)閉;在此之后,任何一個(gè)對(duì)當(dāng)前頁(yè)面進(jìn)行操作的document.write()方法將打開(kāi)—個(gè)新的輸出流。它將清除當(dāng)前頁(yè)面內(nèi)容(包括源文檔的任何變量或值)、因此.假如希望用腳本生成的HTML替換當(dāng)前頁(yè)面,就必須把HTML內(nèi)容連接起來(lái)賦給一個(gè)變量、使用一個(gè)document.write()方法完成寫(xiě)操作,不必清除文檔并打開(kāi)一個(gè)新數(shù)據(jù)流,一個(gè)document.write()調(diào)用就可完成所有的操作。
關(guān)于document.write()方法還有一點(diǎn)要說(shuō)明的是它的相關(guān)方法document.close()。腳本向窗口(不管是本窗口或其他窗口)寫(xiě)完內(nèi)容后.必須關(guān)閉輸出流。在延時(shí)腳本的最后一個(gè)document.write()方法后面.必須確保含有document.close()方法,不這樣做就不能顯示圖片和表單。并且,任何后面調(diào)用的document.write()方法只會(huì)把內(nèi)容追加到頁(yè)面后,而不會(huì)清除現(xiàn)有內(nèi)容來(lái)寫(xiě)入新值。
document.write方法
一個(gè)最基本的JavaScript命令是document.write。這個(gè)命令簡(jiǎn)單地打印指定的文本內(nèi)容到頁(yè)面上。為了逐字打印文本,在打印的文本字符串加上單引號(hào)。
document.write('Hello World!');
上面的js代碼將會(huì)在頁(yè)面上顯示出"Hello World!"
你可以使用document.write 打印變量。輸入變量名稱(chēng)不加上引號(hào),如下:
var mytext = "Hello again";
document.write(mytext);
注意:如果變量名稱(chēng)加上引號(hào),將會(huì)打印出變量名稱(chēng)(不會(huì)打印變量值)。你可以使用“+”符號(hào)來(lái)連接變量值和文本字符串。
var colour1 = "purple";
var colour2 = "pink";
document.write('<p>colour1: ' + colour1 + '<br>colour2: ' + colour2 + '</p>');
打印結(jié)果如下:
colour1: purple
colour2: pink
document.write也多用于加載js廣告
document.write('<scri'+'pt src="http://www.dhdzp.com/ad.js" type="text/javascript"></s'+'cript>');
document.write("<scri"+"pt src='http://www.dhdzp.com/ad.js' type='text/javascript'></s"+"cript>");
document.write("<scri"+"pt src=\"http://www.dhdzp.com/ad.js\" type=\"text/javascript\"></s"+"cript>");
一般外面用單引號(hào)(雙引號(hào))連接字符,里面的就要用雙信號(hào)(單引號(hào)),這樣就不會(huì)錯(cuò)了。當(dāng)然也可以用轉(zhuǎn)義字符,但這樣以后修改比較麻煩。
document.write這種方式加載的js是異步的
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ru">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
</head>
<script type="text/javascript">
function load(js){
var s = document.createElement('script');
s.setAttribute('type','text/javascript');
s.setAttribute('src',js);
var head = document.getElementsByTagName('head');
head[0].appendChild(s);
}
function write(js){
document.write('<script type="text/javascript" src="'+js+'" > <\/script>');
}
load("http://www.dhdzp.com/js/2011/jquery-1.5.1.min.js");
// write("http://www.dhdzp.com/js/2011/jquery-1.5.1.min.js");
</script>
<script>
alert($);
</script>
問(wèn): 用createElement("script")的方式加載,調(diào)用函數(shù)就會(huì)報(bào)錯(cuò),用document.write就不報(bào)錯(cuò)?
答案:
對(duì)于動(dòng)態(tài)創(chuàng)建的js 引用而言 ,針對(duì)不同的瀏覽器有不同的反應(yīng)
樓主的這種寫(xiě)法 對(duì) FF Opera 而言 load 方法是阻塞的 故alert($)能輸出,而對(duì)IE Chrome Safria 而言 是非阻塞的 所以就會(huì)報(bào)錯(cuò)
而document.write的方式,對(duì)所有瀏覽器而言都是阻塞的 即同步的 所以alert($)會(huì)輸出正確結(jié)果
相關(guān)文章
JavaScript toDataURL圖片轉(zhuǎn)換問(wèn)題解讀
這篇文章主要介紹了JavaScript toDataURL圖片轉(zhuǎn)換問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
javascript中select下拉框的用法總結(jié)
這篇文章主要為大家介紹了javascript中select下拉框的用法,select在開(kāi)發(fā)中經(jīng)常被用到,用于進(jìn)行選項(xiàng)選擇,需要的朋友可以參考下2016-01-01
原生JS實(shí)現(xiàn)HTML轉(zhuǎn)Markdown功能
這篇文章主要為大家詳細(xì)介紹了如何使用原生JS實(shí)現(xiàn)簡(jiǎn)單的HTML轉(zhuǎn)Markdown功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-04-04
JS提示:Uncaught SyntaxError:Unexpected token ) 錯(cuò)誤的解決方法
這篇文章主要介紹了JS提示:Uncaught SyntaxError:Unexpected token ) 錯(cuò)誤的解決方法,結(jié)合實(shí)例形式分析了javascript提示此類(lèi)異常的常見(jiàn)原因與相關(guān)解決方法,需要的朋友可以參考下2016-08-08
p5.js實(shí)現(xiàn)聲音控制警察抓小偷游戲示例解析
這篇文章主要為大家介紹了p5.js實(shí)現(xiàn)聲音控制警察抓小偷游戲示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
JS實(shí)現(xiàn)div內(nèi)部的文字或圖片自動(dòng)循環(huán)滾動(dòng)代碼
在某些情況下需要這樣的功能:使用JS實(shí)現(xiàn)div內(nèi)部的文字或圖片自動(dòng)循環(huán)滾動(dòng),接下來(lái)為大家詳細(xì)介紹下實(shí)現(xiàn)方法,感興趣的朋友可以參考下哈2013-04-04
js 中{},[]中括號(hào),大括號(hào)使用詳解
{ } 大括號(hào),表示定義一個(gè)對(duì)象,大部分情況下要有成對(duì)的屬性和值,或是函數(shù)2011-05-05

