整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          HTML基礎教程:超鏈接的使用

          TML 超鏈接(鏈接)

          超鏈接可以是一個字,一個詞,或者一組詞,也可以是一幅圖像,您可以點擊這些內容來跳轉到新的文檔或者當前文檔中的某個部分。

          當您把鼠標指針移動到網頁中的某個鏈接上時,箭頭會變為一只小手。

          我們通過使用 <a> 標簽在 HTML 中創建鏈接。

          有兩種使用 <a> 標簽的方式:

          1. 通過使用 href 屬性 - 創建指向另一個文檔的鏈接
          2. 通過使用 name 屬性 - 創建文檔內的書簽

          HTML 鏈接語法

          鏈接的 HTML 代碼很簡單。它類似這樣:

          <a href="url">Link text</a>
          

          href 屬性規定鏈接的目標。

          開始標簽和結束標簽之間的文字被作為超級鏈接來顯示。

          實例

          <a >百度</a>
          

          上面這行代碼顯示為:百度

          點擊這個超鏈接會把用戶帶到 百度 的首頁。

          提示:"鏈接文本" 不必一定是文本。圖片或其他 HTML 元素都可以成為鏈接。

          HTML 鏈接 - target 屬性

          使用 Target 屬性,你可以定義被鏈接的文檔在何處顯示。

          下面的這行會在新窗口打開文檔:

          <a  target="_blank">百度</a>
          

          HTML 鏈接 - name 屬性

          name 屬性規定錨(anchor)的名稱。

          您可以使用 name 屬性創建 HTML 頁面中的書簽。

          書簽不會以任何特殊方式顯示,它對讀者是不可見的。

          當使用命名錨(named anchors)時,我們可以創建直接跳至該命名錨(比如頁面中某個小節)的鏈接,這樣使用者就無需不停地滾動頁面來尋找他們需要的信息了。

          命名錨的語法:

          <a name="label">錨(顯示在頁面上的文本)</a>
          

          提示:錨的名稱可以是任何你喜歡的名字。

          提示:您可以使用 id 屬性來替代 name 屬性,命名錨同樣有效。

          實例

          首先,我們在 HTML 文檔中對錨進行命名(創建一個書簽):

          <a name="tips">基本的注意事項 - 有用的提示</a>
          

          然后,我們在同一個文檔中創建指向該錨的鏈接:

          <a href="#tips">有用的提示</a>
          

          您也可以在其他頁面中創建指向該錨的鏈接:

          <a href="url#tips">有用的提示</a>

          在新的瀏覽器窗口打開鏈接

          本例演示如何在新窗口打開一個頁面,這樣的話訪問者就無需離開你的站點了。

          <html>
          <body>
          <a  target="_blank">百度</a>
          <p>如果把鏈接的 target 屬性設置為 "_blank",該鏈接會在新窗口中打開。</p>
          </body>
          </html>
          ?
          

          HTML基礎教程:超鏈接的使用


          寄語:希望疫情早日過去,雖然我們不能去一線奮戰,但是可以老老實實的在家里待著,不給國家添麻煩。既然不能出門,那么就利用時間多多學習,提升自己吧!

          今天我們從技術的角度來說一下,當你在瀏覽器輸入一個網址,如http://www.toutiao.com,按回車之后到底發生了什么?

          DNS(Domain Name System,域名系統)解析

          當我們輸入一個URL地址時,瀏覽器需要知道應該去哪臺服務器上獲取資源。而計算機在互聯網中的唯一標識是IP地址,因此需要把我們輸入的網址解析成IP地址,進而找到相應的服務器。

          那么用一句話概括就是--DNS解析的過程就是尋找哪臺機器上有你需要資源的過程。那么我們來看一下解析過程:

          1.瀏覽器緩存:瀏覽器會保存一段時間內訪問過的一些網址的DNS信息(不同瀏覽器保存時長不等),所以會先檢查瀏覽器緩存中是否有記錄,如果有,則直接返回對于的IP地址。

          2.系統緩存:如果在瀏覽器緩存中沒有找到相應的記錄,瀏覽器就會查看系統緩存,查看本地的host文件中是否有相應信息。

          3.路由器緩存:如果還是沒有,則請求會發給路由器(路由器一般也存有DNS信息),在路由器緩存中繼續查找。

          4.DNS緩存:接下來請求本地的DNS服務器,是由互聯網服務提供商(Internet Service Provider 即 ISP)提供。

          5.遞歸搜索:如果以上方式皆找不到,那么ISP的DNS服務器會將請求發向根域名服務器進行遞歸搜索。

          根域名服務器就是面向全球的頂級DNS服務器,共有13臺邏輯上的服務器,從A到M命名,真正的實體服務器則有幾百臺,分布于全球各大洲。

          TCP(Transmission Control Protocol)連接

          通過DNS域名解析之后,瀏覽器便開始發送請求。那么這時候就需要先構建請求信息,包括以下三部分:

          請求的URI協議/版本

          請求頭(Request Header)

          請求正文

          HTTP請求在應用層準備好后,瀏覽器會在傳輸層發起一條到達服務器的 tcp 連接,這個時候就開始了三次握手的過程。如下圖所示:

          三次握手

          這個過程先由客戶端嘗試建立起通信,而后服務器應答并接受客戶端的請求,最后由客戶端發出該請求已經被接受的報文。完成三次握手后,客戶端與服務器開始傳送數據。

          瀏覽器發送HTTP請求

          瀏覽器和服務器建立鏈接之后,瀏覽器會發送HTTP請求。HTTP請求包含三部分:請求行、請求頭、請求體。

          請求行包含“方法URI協議/版本”例如:GET / HTTP/1.1

          以上代碼中“GET”代表請求方法,“/”表示URI,“HTTP/1.1代表協議和協議的版本。

          請求頭包含許多有關的客戶端環境和請求正文的有用信息。例如,請求頭可以聲明瀏覽器所用的語言,請求正文的長度等。請求正文中可以包含客戶提交的查詢字符串信息,如下圖所示:

          服務器處理HTTP請求并返回響應

          接下來,服務器開始接收HTTP請求,并根據請求頭信息進行解析。然后生成一個響應頭和具體響應內容。

          接著服務器會以HTTP的Response對象返回,主要包括狀態碼,響應頭,響應報文三個部分。而響應頭告訴了瀏覽器一些必要的信息,例如重要的Status Code,具體請看下圖:

          瀏覽器解析響應并渲染頁面

          瀏覽器接收到服務器到響應信息后,將下載解析HTML文檔,渲染頁面。瀏覽器不用等到完全接收完信息的時候才開始加載,而是一部分一部分的顯示,直到顯示完全。

          具體過程包括:構建DOM樹、構建渲染樹、定位頁面元素、繪制頁面元素等。DOM樹節點如下圖所示:

          關閉TCP鏈接

          當數據完成請求到返回的過程之后,根據Connection的Keep-Alive屬性可以選擇是否斷開TCP連接.斷開連接時,客戶端與服務器四次揮手,斷開tcp連接。

          第一次揮手:客戶端想分手,發送消息給服務器;

          第二次揮手:服務器通知客戶端已經接受到分手請求,但還沒做好分手準備;

          第三次揮手:服務器已經做好分手準備,通知客戶端;

          第四次揮手:客戶端發送消息給服務器,確定分手,服務器關閉連接。

          四次揮手

          好啦,以上就是全部的步驟了。每一步還可以細細的研究。我這里只是進行了整體介紹,希望對你幫助。

          、CSS方法

          .disabled { pointer-events: none; }

          二、jQuery方法

          方法一

          $(this).click(function (event) {
              event.preventDefault();
          }

          方法二

          $('a').live('click', function(event) {
              alert("抱歉,已停用!");
              event.preventDefault();
          });

          注:此方法中的live亦可以為on, bind等方法

          方法三

          $('.disableCss').removeAttr('onclick'); //去掉標簽中的onclick事件

          通過removeAttr方法來控制html標簽的屬性已達到啟用或禁用事件。另, 使用這種方式也可以控制其他事件或其他效果。

          方法四

          $('#button').attr('disabled',"true");//添加disabled屬性
          $('#button').removeAttr("disabled"); //移除disabled屬性

          注:和方法三是一樣的, 不過disabled屬性一般用在類型為button或submit的input上


          主站蜘蛛池模板: 99精品国产高清一区二区三区 | 无码人妻久久一区二区三区蜜桃 | 亚洲色精品三区二区一区| 一区二区三区在线播放| 色狠狠色噜噜Av天堂一区| 日韩精品在线一区二区| 91久久精品一区二区| 交换国产精品视频一区| 无码人妻久久一区二区三区免费 | 国产精品乱码一区二区三区| 国产精品无圣光一区二区 | 中文字幕一区二区三区精华液 | 久久精品视频一区| 中文乱码人妻系列一区二区| 北岛玲在线一区二区| 美女一区二区三区| 无码一区二区三区爆白浆| 精品理论片一区二区三区| 色妞AV永久一区二区国产AV| 国产成人精品第一区二区| 福利片免费一区二区三区| 中文字幕VA一区二区三区| 国产手机精品一区二区| 亚洲美女高清一区二区三区| 国产AV午夜精品一区二区三区 | 搜日本一区二区三区免费高清视频| av无码一区二区三区| 精品少妇人妻AV一区二区三区| 国产精品第一区揄拍无码| 日韩一区二区在线观看视频| 国产精品亚洲一区二区三区久久| 国产乱码精品一区二区三区中文| 国产av一区最新精品| 综合人妻久久一区二区精品| 国产精品视频一区| 无码国产精品一区二区免费式芒果 | 亚洲综合无码一区二区| 一区二区三区波多野结衣| 51视频国产精品一区二区| 国产一区二区高清在线播放| 精品国产一区二区三区免费看|