搜尋
首頁web前端前端問答什麼是jquery異步加載

什麼是jquery異步加載

May 24, 2022 pm 04:25 PM
jquery

在jquery中,非同步載入又稱為非阻塞加載,一般指在載入的同時執行程式碼;也就是當瀏覽器在載入JQ或JS的同時,也會進行後續頁面處理,這樣可以優化腳本檔案的加載,提高頁面的加載速度。 jq中可用load()、getJSON()等方法來實作非同步。

什麼是jquery異步加載

本教學操作環境:windows7系統、jquery1.10.2版本、Dell G3電腦。

什麼是jquery異步加載

#異步加載又稱為非阻塞加載,當瀏覽器在加載JQ或JS的同時,還會進行後續頁面處理。

非同步載入可以最佳化腳本檔案的加載,提高頁面的載入速度。

什麼時候要使用非同步載入?

  • 定時任務:setTimeout,setInterval

  • #網路請求:ajax請求,動態載入

  • 事件綁定

    1個點擊事件被綁定了之後,我們是不知道瀏覽者什麼時候會點擊這個按鈕的,如果瀏覽者一直不點擊按鈕,難道就不給他看頁面接下來的動作了嗎?顯然不可能,所以要之後的事情和綁定事件同時做,如果瀏覽者點擊了,那就按點擊之後的動作往下走,如果真的沒點擊,那他也不會因為過程被阻塞而導致看不到其他的畫面。

jQuery四種非同步載入

在頁面開發的過程中,為了加快整體頁面打開的速度,對於某局部的資料採用非同步讀取(Ajax技術)的方法獲取,此方法的應用大大優化了使用者的體驗,優化了頁面的執行。

1、jQuery中的load()方法載入HTML

#在傳統的JavaScript中,使用XMLHttpRequest物件非同步載入資料;而在jQuery中,使用load()方法可以輕鬆實現獲取非同步資料的功能。

load(url,[data],[callback]);

 <script type="text/javascript">
        $(function() {
            $("#Button1").click(function() { //按钮点击事件
                $("#divTip").load("6-1b.html"); //load()方法加载数据
            })
        })
    </script>
<div class="clsShow">姓名:陶国荣<br />性别:男<br />邮箱:tao_guo1_rong@163.com</div>

2、jQuery中的全域函數getJSON()

#雖然使用load()方法可以很快地載入資料到頁面中,但有時需要對取得的資料進行處理,如果將用load()方法取得內容進行遍歷,也可以進行資料處理,但必須先插入頁面中才能進行,執行效率不高。

JSON這種輕量級的資料互動格式很方便電腦的讀取,效率很高。在jQuery中專門有一個全域函數getJSON(),其呼叫的語法格式為:

$.getJSON(url,[data],[callback])

   $(function() {
            $("#Button1").click(function() { //按钮单击事件
                //打开文件,并通过回调函数处理获取的数据
                $.getJSON("UserInfo.json", function(data) {
                    $("#divTip").empty(); //先清空标记中的内容
                    var strHTML = ""; //初始化保存内容变量
                    $.each(data, function(InfoIndex, Info) { //遍历获取的数据
                        strHTML += "姓名:" + Info["name"] + "<br>";
                        strHTML += "性别:" + Info["sex"] + "<br>";
                        strHTML += "邮箱:" + Info["email"] + "<hr>";
                    })
                    $("#divTip").html(strHTML); //显示处理后的数据
                })
            })
        })

其JSON檔案格式為:

[
  {
    "name": "陶国荣",
    "sex": "男",
    "email": "tao_guo_rong@163.com"
  },
  {
    "name": "李建洲",
    "sex": "女",
    "email": "xiaoli@163.com"
  }
]

3、jQuery中的全域函數getScript()

在jQuery中,除透過全域函數getJSON格式的檔案內容外,還可以透過另外一個全域函數getScript()取得JS檔案內容。基本設定如下:

<script type="text/javascript" src="Jscript/xx.js"></script>

動態設定為:

$("<script type=&#39;text/javascript&#39; src=&#39;Jscript/xx.js&#39;/>

而透過全域函數getScript()載入JS檔案可以提高頁面的執行效率

 $(function() {
            $("#Button1").click(function() { //按钮单击事件
                //打开已获取返回数据的文件
                $.getScript("UserInfo.js");
            })
        })

其JS檔案格式如下:

var data = [
  {
      "name": "陶国荣",
      "sex": "男",
      "email": "tao_guo_rong@163.com"
  },
  {
      "name": "李建洲",
      "sex": "女",
      "email": "xiaoli@163.com"
  }
];

var strHTML = ""; //初始化保存内容变量
$.each(data, function() { //遍历获取的数据
    strHTML += "姓名:" + this["name"] + "<br>";
    strHTML += "性别:" + this["sex"] + "<br>";
    strHTML += "邮箱:" + this["email"] + "<hr>";
})
$("#divTip").html(strHTML); //显示处理后的数据

4、JQuery中異步加載XML文檔

對XML格式的文檔,jQuery中使用全局函數$.get()進行訪問,其語法格式為:

$.get(url,[data],[callback],[type])

參數url表示等待載入的資料位址,可選項[data]表示傳送到伺服器的數據,可選項[callback]表示載入成功時執行的回呼函數,可選項[type]參數表示傳回資料格式,可以為:HTML\XML\JS\JSON\TEXT等。

其呼叫方式與JSON類似:

 $(function() {
            $("#Button1").click(function() { //按钮单击事件
                //打开文件,并通过回调函数处理获取的数据
                $.get("UserInfo.xml", function(data) {
                    $("#divTip").empty(); //先清空标记中的内容
                    var strHTML = ""; //初始化保存内容变量
                    $(data).find("User").each(function() { //遍历获取的数据
                        var $strUser = $(this);
                        strHTML += "姓名:" + $strUser.find("name").text() + "<br>";
                        strHTML += "性别:" + $strUser.find("sex").text() + "<br>";
                        strHTML += "邮箱:" + $strUser.find("email").text() + "<hr>";
                    })
                    $("#divTip").html(strHTML); //显示处理后的数据
                })
            })
        })

XML格式:

<?xml version="1.0" encoding="utf-8" ?>
<Info>
  <User id="1">
    <name>陶国荣</name>
    <sex>男</sex>
    <email>tao_guo_rong@163.com</email>
  </User>

  <User id="2">
    <name>李建洲</name>
    <sex>女</sex>
    <email>xiaoli@163.com</email>
  </User>
</Info>

【推薦學習:jQuery影片教學web前端視頻

以上是什麼是jquery異步加載的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
React的前端開發:優勢和技術React的前端開發:優勢和技術Apr 17, 2025 am 12:25 AM

React的優勢在於其靈活性和高效性,具體表現在:1)組件化設計提高了代碼重用性;2)虛擬DOM技術優化了性能,特別是在處理大量數據更新時;3)豐富的生態系統提供了大量第三方庫和工具。通過理解React的工作原理和使用示例,可以掌握其核心概念和最佳實踐,從而構建高效、可維護的用戶界面。

反應與其他框架:比較和對比選項反應與其他框架:比較和對比選項Apr 17, 2025 am 12:23 AM

React是一個用於構建用戶界面的JavaScript庫,適用於大型和復雜的應用。 1.React的核心是組件化和虛擬DOM,提高了UI渲染性能。 2.與Vue相比,React更靈活但學習曲線較陡,適合大型項目。 3.與Angular相比,React更輕量,依賴社區生態,適用於需要靈活性的項目。

在HTML中脫神秘的React:這一切如何工作在HTML中脫神秘的React:這一切如何工作Apr 17, 2025 am 12:21 AM

React通過虛擬DOM在HTML中運作。 1)React使用JSX語法編寫類似HTML的結構。 2)虛擬DOM管理UI更新,通過Diffing算法高效渲染。 3)使用ReactDOM.render()將組件渲染到真實DOM。 4)優化和最佳實踐包括使用React.memo和組件拆分,提升性能和可維護性。

反應行動:現實應用程序的示例反應行動:現實應用程序的示例Apr 17, 2025 am 12:20 AM

React在電商、社交媒體和數據可視化等領域有廣泛應用。 1)電商平台使用React構建購物車組件,利用useState管理狀態,onClick處理事件,map函數渲染列表。 2)社交媒體應用通過useEffect與API交互,展示動態內容。 3)數據可視化使用react-chartjs-2庫渲染圖表,組件化設計便於嵌入應用。

帶有React的前端體系結構:最佳實踐帶有React的前端體系結構:最佳實踐Apr 17, 2025 am 12:10 AM

React前端架構的最佳實踐包括:1.組件設計與復用:設計單一職責、易於理解和測試的組件,實現高度復用。 2.狀態管理:使用useState、useReducer、ContextAPI或Redux/MobX管理狀態,避免過度複雜。 3.性能優化:通過React.memo、useCallback、useMemo等方法優化性能,找到平衡點。 4.代碼組織與模塊化:按功能模塊組織代碼,提高可管理性和可維護性。 5.測試與質量保證:使用Jest和ReactTestingLibrary進行測試,確保代碼質量和可靠

html內部的反應:集成了動態網頁的JavaScripthtml內部的反應:集成了動態網頁的JavaScriptApr 16, 2025 am 12:06 AM

要將React集成到HTML中,需遵循以下步驟:1.在HTML文件中引入React和ReactDOM。 2.定義一個React組件。 3.使用ReactDOM將組件渲染到HTML元素中。通過這些步驟,可以將靜態HTML頁面轉化為動態、交互式的體驗。

反應的好處:性能,可重用性等等反應的好處:性能,可重用性等等Apr 15, 2025 am 12:05 AM

React受歡迎的原因包括其性能優化、組件復用和豐富的生態系統。 1.性能優化通過虛擬DOM和diffing機制實現高效更新。 2.組件復用通過可複用組件減少重複代碼。 3.豐富的生態系統和單向數據流增強了開發體驗。

反應:創建動態和交互式用戶界面反應:創建動態和交互式用戶界面Apr 14, 2025 am 12:08 AM

React是構建動態和交互式用戶界面的首選工具。 1)組件化與JSX使UI拆分和復用變得簡單。 2)狀態管理通過useState鉤子實現,觸發UI更新。 3)事件處理機制響應用戶交互,提升用戶體驗。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具