婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > HTML中的base標(biāo)簽使用詳解

HTML中的base標(biāo)簽使用詳解

熱門標(biāo)簽:最簡單的百度地圖標(biāo)注店鋪 AI外呼系統(tǒng) 價(jià)格 梧州地圖標(biāo)注app 錦州企業(yè)外呼系統(tǒng) 青海保險(xiǎn)智能外呼系統(tǒng)商家 水經(jīng)注萬能地圖標(biāo)注 營口400電話申請(qǐng) 禹州電話外呼系統(tǒng) 新鄉(xiāng)機(jī)器人外呼系統(tǒng)

在requireJS中,有一個(gè)屬性叫baseURL,通過設(shè)置baseURL,我們可以將需要加載的文件路徑寫成相對(duì)于項(xiàng)目的,而不是相對(duì)于當(dāng)前頁面的。

例如:假設(shè)我們的項(xiàng)目目錄是/myproject/,里面有兩個(gè)頁面,一個(gè)是/myproject/one.html,另一個(gè)是/myproject/html/other.html,他們都要加載/myproject/js/some.js。如果我們將baseURL設(shè)置成/myproject/,則我們?cè)诩虞d該js的時(shí)候,這兩個(gè)頁面都可以使用相對(duì)于項(xiàng)目的路徑./js/some,而不是因?yàn)轫撁娴穆窂讲煌褂貌煌南鄬?duì)路徑。

但是如果不使用requireJS,我們能不能實(shí)現(xiàn)類似于baseURL的功能呢?

base標(biāo)簽
其實(shí),HTML中有一個(gè)base標(biāo)簽,可以產(chǎn)生類似的功能。舉個(gè)例子:

復(fù)制代碼
代碼如下:

<html>
<head>
<base />
</head>
<body>
<img src="./images/logo_gray.gif" />
</body>
</html>

我們會(huì)發(fā)現(xiàn),我們用相對(duì)路徑./images/logo_gray.gif加載的圖片,卻變成了http://static.cnblogs.com/images/logo_gray.gif的圖片。

base標(biāo)簽可以給頁面的鏈接加上默認(rèn)的路徑,或者默認(rèn)的打開方式。

下面是一個(gè)設(shè)置默認(rèn)打開方式的例子:

復(fù)制代碼
代碼如下:

<html>
<head>
<base target="_blank" />
</head></p> <p><body>
<a >這個(gè)頁面會(huì)在新窗口打開</a>
<a >這個(gè)頁面也會(huì)在新窗口打開</a>
</body>
</html>

一個(gè)BUG
base標(biāo)簽最好不要?jiǎng)討B(tài)寫入,否則在Firefox和IE中會(huì)有一個(gè)小bug,比如對(duì)于頁面http://localhost/static/test.html:

復(fù)制代碼
代碼如下:

<html>
<head>
<script>
document.write('<base href="http://localhost/" />');
</script>
</head></p> <p><body>
<img src="static/1.jpg" />
</body>
</html>

Firefox和IE中會(huì)先加載http://localhost/static/static/1.jpg,然后再加載http://localhost/static/1.jpg。也就是說,他們都先嘗試用相對(duì)于當(dāng)前頁面的路徑進(jìn)行加載,然后再通過base標(biāo)簽設(shè)置的默認(rèn)路徑加載。

Chrome的加載正常。

Firefox的加載不正常。

 

Why?

這個(gè)我們并沒有找到很好的解釋,我們的分析是瀏覽器對(duì)資源加載進(jìn)行了優(yōu)化,導(dǎo)致動(dòng)態(tài)插入base標(biāo)簽并未生效時(shí),就預(yù)先去加載了,結(jié)果出錯(cuò),然后base標(biāo)簽生效于是又加載正確的資源。

 

如何避免呢?不動(dòng)態(tài)寫入base標(biāo)簽?zāi)敲淳蜎]有任何問題。如果需要?jiǎng)討B(tài)寫入base標(biāo)簽,那么頁面所有引用的外部資源都需要通過Javascript動(dòng)態(tài)加載。

標(biāo)簽:荊門 青島 哈密 昭通 山南 潮州 延邊 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTML中的base標(biāo)簽使用詳解》,本文關(guān)鍵詞  HTML,中的,base,標(biāo)簽,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《HTML中的base標(biāo)簽使用詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于HTML中的base標(biāo)簽使用詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 宁都县| 五家渠市| 绿春县| 惠来县| 犍为县| 威宁| 宜川县| 西安市| 万载县| 桂阳县| 古丈县| 上栗县| 尉氏县| 云浮市| 水城县| 宜章县| 泗水县| 仙游县| 汾阳市| 澄城县| 正镶白旗| 沙雅县| 天峨县| 伊宁市| 鹤岗市| 岑溪市| 威信县| 梁河县| 石阡县| 丹巴县| 澄迈县| 石狮市| 肥西县| 锡林郭勒盟| 长武县| 铜鼓县| 酒泉市| 巴塘县| 江都市| 哈巴河县| 砚山县|