在網(wǎng)頁中使用document.write時(shí)遭遇的奇怪問題
而在進(jìn)一步研究中我又發(fā)現(xiàn),對(duì)于Chrome和Safari這兩個(gè)使用了WebKit網(wǎng)頁排版引擎的瀏覽器來說,如果外部調(diào)用的JavaScript中再次調(diào)用document.write來寫入另一個(gè)調(diào)用外部JavaScript的<script>標(biāo)記,則第二次調(diào)用的外部JavaScript不會(huì)被執(zhí)行,而之后的一些內(nèi)容也會(huì)被打亂——實(shí)際情況其實(shí)要稍微復(fù)雜一點(diǎn),跟第二級(jí)、第三級(jí)document.write調(diào)用的參數(shù)中的具體內(nèi)容有關(guān),因?yàn)闀r(shí)間和精力的關(guān)系我沒有辦法作更具體的測(cè)試了。
在經(jīng)過這些研究以后,幾大主流瀏覽器中唯一幸存的、能正確處理所有document.write調(diào)用的,就只有Firefox了。
Firefox的一種偽“多線程”事件處理的特性一直是讓我很不見待的東西,這件事也算是對(duì)“各有所長(zhǎng)”的一個(gè)佐證吧。
想要了解這個(gè)問題所引發(fā)的種種現(xiàn)象,可以下載write-test.zip,解壓之后用各種瀏覽器打開其中的write-test.htm。
這幾天我一直在嘗試編寫一個(gè)替用函數(shù)來解決這個(gè)問題,目前已經(jīng)能順利通過上面那個(gè)鏈接中的測(cè)試了。
如果接下來的幾天之內(nèi)沒有發(fā)現(xiàn)什么明顯的問題,我會(huì)把它發(fā)在博客上供大家參考。
測(cè)試代碼,打包下載
- js中document.write使用過程中的一點(diǎn)疑問解答
- js document.write()使用介紹
- document.write()及其輸出內(nèi)容的樣式、位置控制
- document.write與writeln的輸出內(nèi)容區(qū)別說明
- 第一個(gè)JavaScript入門基礎(chǔ) document.write輸出
- document.open() 與 document.write()的區(qū)別
- 代碼生成器 document.write()
- document.open() 與 document.write()
- JS 中document.write()的用法和清空的原因淺析
相關(guān)文章
詳解使用fetch發(fā)送post請(qǐng)求時(shí)的參數(shù)處理
這篇文章主要介紹了詳解使用fetch發(fā)送post請(qǐng)求時(shí)的參數(shù)處理的相關(guān)資料,需要的朋友可以參考下2017-04-04基于bootstrap-datetimepicker.js不支持IE8的快速解決方法
下面小編就為大家?guī)硪黄赽ootstrap-datetimepicker.js不支持IE8的快速解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-11-11微信小程序三級(jí)聯(lián)動(dòng)選擇器使用方法
這篇文章主要為大家詳細(xì)介紹了微信小程序三級(jí)聯(lián)動(dòng)選擇器使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02簡(jiǎn)單的兩種Extjs formpanel加載數(shù)據(jù)的方式
這篇文章介紹了兩種Extjs formpanel加載數(shù)據(jù)的方式,有需要的朋友可以參考一下2013-11-11基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)
這篇文章主要介紹了基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)的相關(guān)資料,需要的朋友可以參考下2016-02-02原生javascript實(shí)現(xiàn)圖片放大鏡效果
這篇文章主要為大家詳細(xì)介紹了原生javascript實(shí)現(xiàn)圖片放大鏡效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01JS實(shí)現(xiàn)的將html轉(zhuǎn)為pdf功能【基于瀏覽器端插件jsPDF】
這篇文章主要介紹了JS實(shí)現(xiàn)的將html轉(zhuǎn)為pdf功能,結(jié)合完整實(shí)例形式分析了基于瀏覽器端插件jsPDF實(shí)現(xiàn)的HTML格式數(shù)據(jù)轉(zhuǎn)換成pdf具體操作技巧,需要的朋友可以參考下2018-02-02Javascript獲取數(shù)組中的最大值和最小值的方法匯總
比較數(shù)組中數(shù)值的大小是比較常見的操作,下面同本文給大家分享四種放哪廣發(fā)獲取數(shù)組中最大值和最小值,對(duì)此感興趣的朋友一起學(xué)習(xí)吧2016-01-01javascript匿名函數(shù)中的''return function()''作用
這篇文章主要介紹了javascript匿名函數(shù)中的'return function()'作用介紹,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-10-10