主頁(yè) > 知識(shí)庫(kù) > 用javascript來(lái)控制 鏈接的target 屬性的代碼

用javascript來(lái)控制 鏈接的target 屬性的代碼

熱門(mén)標(biāo)簽:隨州外呼系統(tǒng)廠家 蘇州做電話機(jī)器人 沈陽(yáng)400電話辦理多少錢(qián) 地圖標(biāo)注微信好友 快速更改地圖標(biāo)注點(diǎn)標(biāo) 南山電話機(jī)器人 ai電話機(jī)器人效果差 南昌電話機(jī)器人系統(tǒng) 地圖標(biāo)注樓盤(pán)
在HTML 4.0 Strict和XHTML 1.0 STRICT里不允許在a>標(biāo)簽里使用target屬性,這是一件令網(wǎng)頁(yè)設(shè)計(jì)者懊惱的事.在過(guò)渡的規(guī)范里還是允許使用的.但通過(guò)一定的方法,我們可以解決這一問(wèn)題. 

       HTMl4.0規(guī)范里拿掉了target屬性.但它添加了另外一個(gè)屬性:rel.這個(gè)屬性是用來(lái)指定包含鏈接的文檔和所鏈接文檔之間的關(guān)系的.規(guī)范里定義了其屬性值(如:next,previous,chapter,section),在這些屬性里大多數(shù)是用來(lái)定義一個(gè)大文檔里各個(gè)小部分之間的關(guān)系的.事實(shí)上.規(guī)范里允許開(kāi)發(fā)人員自由的使用非標(biāo)準(zhǔn)屬性值做特定的運(yùn)用. 

在這里,我們采用一個(gè)自定義值external用于rel屬性來(lái)標(biāo)記一個(gè)鏈接,用來(lái)新開(kāi)一個(gè)窗口. 

不符合最新Web標(biāo)準(zhǔn)的鏈接代碼: 
a href="document.html" target="_blank">external link/a> 
運(yùn)用rel屬性: 
a href="document.html" rel="external">external link/a> 
       現(xiàn)在我們構(gòu)建了一個(gè)符合Web標(biāo)準(zhǔn)的新開(kāi)窗口的鏈接,我們還需要運(yùn)用JavaScript是其實(shí)現(xiàn)新開(kāi)窗口.腳本要實(shí)現(xiàn)的工作是當(dāng)網(wǎng)頁(yè)加載時(shí),找到文檔里的所有那些我們定義為rel="external"的超鏈接. 

首先我們要判斷瀏覽器. 
if (!document.getElementsByTagName) return; 
     getElementsByTagName是DOM1標(biāo)準(zhǔn)里一個(gè)容易使用的方法,且它被現(xiàn)在的大多數(shù)瀏覽器所支持,因?yàn)橐恍┡f的瀏覽器如Netscape 4和IE4不支持DOM1,所以我們必須通過(guò)判定這一方法是否存在來(lái)排除這些舊版本的瀏覽器. 

下一步,我們通過(guò)getElementsByTagName方法取得文檔里所有的a>標(biāo)簽: 
var anchors = document.getElementsByTagName("a"); 
anchors被賦值為包含各個(gè)a>標(biāo)簽的數(shù)組,現(xiàn)在我們必須遍歷各個(gè)a>標(biāo)簽并且修改它: 
for (var i=0; i  anchors.length; i++) { 
        var anchor = anchors; 
}
找到要實(shí)現(xiàn)新開(kāi)窗口的a>標(biāo)簽 
if (anchor.getAttribute("href")  anchor.getAttribute("rel") == "external") 
接下來(lái).建立屬性值target并賦值"_target": 
anchor.target = "_blank"; 
完整的代碼: 
復(fù)制代碼 代碼如下:

function externalLinks() {  
          if (!document.getElementsByTagName)   
                  return;  
          var anchors = document.getElementsByTagName("a");  
         for (var i=0; ianchors.length; i++) {  
                 var anchor = anchors;  
                 if (anchor.getAttribute("href")  anchor.getAttribute("rel") == "external")  
                             anchor.target = "_blank";  
         }  
}  
window.onload = externalLinks;
您可能感興趣的文章:
  • JavaScript獲得表單target屬性的方法
  • js 有框架頁(yè)面跳轉(zhuǎn)(target)三種情況下的應(yīng)用
  • JS target與currentTarget區(qū)別說(shuō)明
  • JavaScript replace(rgExp,fn)正則替換的用法
  • javascript currentTarget對(duì)象介紹
  • JavaScript中常用的驗(yàn)證reg

標(biāo)簽:昭通 濰坊 濰坊 大同 石家莊 商洛 深圳 玉樹(shù)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《用javascript來(lái)控制 鏈接的target 屬性的代碼》,本文關(guān)鍵詞  用,javascript,來(lái),控制,鏈接,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《用javascript來(lái)控制 鏈接的target 屬性的代碼》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于用javascript來(lái)控制 鏈接的target 屬性的代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章