国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

符合Web標(biāo)準(zhǔn)的超鏈接_網(wǎng)站重構(gòu)教程

2024-04-29 21:00:47
字體:
供稿:網(wǎng)友
在HTML 4.0 Strict和XHTML 1.0 STRICT里不答應(yīng)在<a>標(biāo)簽里使用target屬性,這是一件令網(wǎng)頁設(shè)計(jì)者懊惱的事.在過渡的規(guī)范里還是答應(yīng)使用的.但通過一定的方法,我們可以解決這一問題.
  
  HTMl4.0規(guī)范里拿掉了target屬性.但它添加了另外一個(gè)屬性:rel.這個(gè)屬性是用來指定包含鏈接的文檔和所鏈接文檔之間的關(guān)系的.規(guī)范里定義了其屬性值(如:next,previous,chapter,section),在這些屬性里大多數(shù)是用來定義一個(gè)大文檔里各個(gè)小部分之間的關(guān)系的.事實(shí)上.規(guī)范里答應(yīng)開發(fā)人員自由的使用非標(biāo)準(zhǔn)屬性值做特定的運(yùn)用.
  
  在這里,我們采用一個(gè)自定義值external用于rel屬性來標(biāo)記一個(gè)鏈接,用來新開一個(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)的新開窗口的鏈接,我們還需要運(yùn)用JavaScript是其實(shí)現(xiàn)新開窗口.腳本要實(shí)現(xiàn)的工作是當(dāng)網(wǎng)頁加載時(shí),找到文檔里的所有那些我們定義為rel="external"的超鏈接.
  
  首先我們要判定瀏覽器.
  if (!document.getElementsByTagName) return;
  
  getElementsByTagName是DOM1標(biāo)準(zhǔn)里一個(gè)輕易使用的方法,且它被現(xiàn)在的大多數(shù)瀏覽器所支持,因?yàn)橐恍┡f的瀏覽器如Netscape 4和IE4不支持DOM1,所以我們必須通過判定這一方法是否存在來排除這些舊版本的瀏覽器.
  
  下一步,我們通過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)新開窗口的<a>標(biāo)簽
  if (anchor.getAttribute("href") &&
  anchor.getAttribute("rel") == "external")
  
  接下來.建立屬性值target并賦值"_target":
  anchor.target = "_blank";
  
  
  完整的代碼:
  ------------------------
  
  function externalLinks() {
  if (!document.getElementsByTagName) return;
  var anchors = document.getElementsByTagName("a");
  for (var i=0; i<anchors.length; i ) {
  var anchor = anchors;
  if (anchor.getAttribute("href") &&
  anchor.getAttribute("rel") == "external")
  anchor.target = "_blank";
  }
  }
  window.onload = externalLinks;

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阳城县| 定州市| 万宁市| 航空| 胶州市| 土默特右旗| 宁波市| 新乐市| 荥经县| 徐汇区| 大理市| 英吉沙县| 宁阳县| 新和县| 东阳市| 青阳县| 綦江县| 龙门县| 盐亭县| 思南县| 太白县| 监利县| 海兴县| 开远市| 栾川县| 霍州市| 靖西县| 金湖县| 彩票| 馆陶县| 昌邑市| 濮阳县| 高安市| 玉溪市| 巫溪县| 朝阳市| 安国市| 抚松县| 加查县| 永城市| 松滋市|