欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JQuery教學(xué)之性能優(yōu)化

 更新時(shí)間:2014年05月14日 10:06:27   作者:  
jQuery是一款非常優(yōu)秀的javascript框架,當(dāng)我們使用到j(luò)Query后就再也不想回到j(luò)avascript時(shí)冗長(zhǎng)的代碼,那么jQuery的優(yōu)化就擺在了我們的面前。那么我們優(yōu)化JQuery應(yīng)該從那些方面入手呢?

jQuery是一款非常優(yōu)秀的javascript框架,當(dāng)我們使用到j(luò)Query后就再也不想回到j(luò)avascript時(shí)冗長(zhǎng)的代碼,那么jQuery的優(yōu)化就擺在了我們的面前。那么我們優(yōu)化JQuery應(yīng)該從那些方面入手呢?

        1、使用最新版本的jQuery

        新版本相對(duì)于舊版本會(huì)做性能上的改進(jìn),還有就是添加新功能。

        2、選擇器的使用

        我們通常會(huì)使用id選擇器、class選擇器、元素選擇器、偽類(lèi)選擇器和元素選擇器。在使用時(shí)我的建議是最好使用id選擇器,其次是class選擇器>元素選擇器>Element選擇器>偽類(lèi)選擇器。

        說(shuō)到選擇器時(shí),不可必選的要插上一句,在使用選擇器查最好是從具有id的父元素開(kāi)始逐級(jí)向下查找。

        3、不要過(guò)度的使用jQuery

        記住一句話(huà)原生的是最快的。jQuery是write less,do more(寫(xiě)的更少,做的更多)。

        4、做好緩存

        當(dāng)時(shí)要重復(fù)使用一個(gè)節(jié)點(diǎn)是可以使用一個(gè)變量存放,在使用時(shí)再調(diào)用。避免重復(fù)獲取節(jié)點(diǎn),降低效率。

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

var inputSelect = $("#head .head_right input");
inputSelect.find("a");
inputSelect.find("i");

        5、使用鏈?zhǔn)讲僮?/P>

        jQuery的一大亮點(diǎn),就是可以使用鏈?zhǔn)讲僮鳌?/P>

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

$("#content").find(".div").eq(2).html("Hello World");

        6、事件委托

        當(dāng)需要多個(gè)同級(jí)元素執(zhí)行一種類(lèi)型的事件時(shí),可以采用事件委托的方式。例:

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

<div id="content">
    <div><div>
    <div><div>
    <div><div>
    <div><div>
    <div><div>
<div>

    當(dāng)每個(gè)class="div"的div都具備一個(gè)click事件的時(shí)候我們可以采取事件委托,

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

$("#content").on("click","div",function(){   
    $(this).css("color","#ff5500");
  });

        7、正確處理循環(huán)

         循環(huán)是一種較耗時(shí)的操作,如果可以使用選擇器直接選中元素,就不要使用循環(huán)去一個(gè)個(gè)的遍歷元素。

        Javascript的原生方法for和while,要比jQuery的each()快。所以應(yīng)該優(yōu)先使用原生的方法。

        8、減少JQuery對(duì)象的生成

        生成Query對(duì)象就會(huì)生成對(duì)應(yīng)的屬性和方法,比較占用資源。所以盡量減少jQuery對(duì)象的生成。

        9、變量的作用域

        當(dāng)一個(gè)變量不需要 在多個(gè)函數(shù)調(diào)用時(shí),應(yīng)該把變量放在函數(shù)內(nèi),減少代碼執(zhí)行時(shí)查找代碼的時(shí)間。

        10、將某些函數(shù)推遲到$(window).load執(zhí)行

        $(document).ready確實(shí)好用,但是它可以再頁(yè)面渲染時(shí),其他元素還沒(méi)有下載完成就執(zhí)行。

        11、腳本的合并

        腳本都是一一被加載的,減少腳本數(shù)量也能提高效率。

        12、元素封裝

        當(dāng)給一個(gè)節(jié)點(diǎn)插入一個(gè)內(nèi)容,可以先把內(nèi)容進(jìn)行封裝,再插入。

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

var content = "";
$("#head").html(content);

        另外就是進(jìn)行js文件的壓縮。

        隨著jQuery的不斷被使用,越來(lái)越多的優(yōu)化方法會(huì)被發(fā)現(xiàn)。

相關(guān)文章

最新評(píng)論