首頁 > web前端 > js教程 > jQuery速度測試:$(this)vs .get()vs .eq()

jQuery速度測試:$(this)vs .get()vs .eq()

Christopher Nolan
發布: 2025-02-23 09:09:09
原創
619 人瀏覽過

jQuery速度測試:$(this)vs .get()vs .eq()

每個循環緩存性能 - 測試以查看從每個元素中抓取當前元素是否可能/更快地從一個元素中抓取/更快。即$(this)vs .get()vs .eq()帶有.text()和textContent/innertext 。測試以JQuery 1.9.1進行。類似於:jQuery速度測試:$(this).attr(“ id”); vs this.id。 jQuery速度測試:$(this)vs .get()vs .eq()
  • .get()和.eq()都從jQuery對像數組返回一個單個“元素”,但它們以不同形式返回單個元素。 >
  • .eq()將其返回為jQuery對象,這意味著DOM元素包裹在jQuery包裝器中,這意味著它接受jQuery函數。
  • .get()返回原始DOM元素。您可以通過訪問其屬性並像在原始DOM元素上一樣調用其功能來操縱它。但是它失去了作為jQuery包裹的對象的身份,因此像.fadein這樣的jQuery函數無法正常工作。
  • >
  • >設置

>測試


   
       list
       
         
             nested 1
             nested 2
             nested 3
         
       
       list
         
             nested 1
             nested 2
             nested 3
         
       list
         
             nested 1
             nested 2
             nested 3
         
       list
   
   


  Benchmark.prototype.setup = function() {
    MY_OBJECT = 
        {
            cache: {},
        
            init: function()
            {
                this.cache.c = $('#container');
                this.cache.n = this.cache.c.find('.nested');
    this.cache.s = this.cache.c.find('#status');
            }
        }
    MY_OBJECT.init();
  };
登入後複製

>常見問題(常見問題解答)關於jQuery eq()方法
$<span>.each(MY_OBJECT.cache.n, function(i<span>, v</span>) 
</span><span>{
</span>    <span>MY_OBJECT.cache.s.text($(this).text());
</span><span>});
</span>

$<span>.each(MY_OBJECT.cache.n, function(i<span>, v</span>) 
</span><span>{
</span>    <span>MY_OBJECT.cache.s.text(MY_OBJECT.cache.n.eq(i).text());
</span><span>});
</span>

$<span>.each(MY_OBJECT.cache.n, function(i<span>, v</span>) 
</span><span>{
</span>    <span>MY_OBJECT.cache.s.text(MY_OBJECT.cache.n.get(i).textContent);
</span><span>});</span>
登入後複製
> jQuery eq()方法的主要功能是什麼?它主要用於從一組相似元素的組中選擇具有特定索引號的元素。 jQuery中的索引從0開始,這意味著第一個元素是在索引0,第二個元素在索引1處,依此類推。當您想將更改應用於組中的特定元素而不會影響其他元素時。當jQuery中的eq()方法和:eq()選擇器都用於根據其索引選擇一個元素時,兩者之間存在關鍵差異。 eq()方法過濾了jQuery對象的元素,這意味著它可以在已經通過其他jQuery方法操縱的一組元素上工作。另一方面,:eq()選擇器直接在DOM元素上工作,這意味著它只能在加載頁面時選擇存在的元素。

我可以與jquery eq()一起使用負數方法?

是的,您可以使用jQuery eq()方法使用負數。當使用負數時,該方法從最後一個元素向後計數。例如,eq(-1)將選擇最後一個元素,eq(-2)將選擇第二個元素,等等。 jQuery eq()方法?

如果使用超出範圍的索引號(即大於元素數),則jQuery eq()方法將返回一個空的jQuery對象。這意味著不會採取任何措施,因為沒有任何要素可以採取行動。

>

>我可以用eq()方法鏈接其他jQuery方法嗎?這是jQuery的強大功能之一,允許您在一行代碼中對所選元素執行多個操作。

>

>我如何使用eq()方法選擇所有偶數或奇數索引元素?

選擇全部或奇數索引元素,您可以在循環中使用eq()方法。對於甚至索引元素,您可以從索引0啟動循環,並增加2個。對於奇數索引元素,您可以從索引1啟動循環,並增量為2。敏感的?

不,eq()方法不是對病例敏感的。它只是根據其索引編號選擇元素,無論其標籤或屬性的情況如何。

>

>我可以將eq()方法與其他jQuery選擇器一起使用嗎?帶有其他jQuery選擇器的eq()方法。這使您可以縮小選擇範圍並將更改應用於滿足某些條件的特定元素。

>

eq()方法如何處理嵌套元素?

>

eq()方法處理嵌套元素作為單獨的元素。這意味著每個嵌套元素都有其自己的索引號,可用於使用eq()方法選擇它。

我可以使用eq()方法來選擇在DOM上添加的元素?是的,您可以使用eq()方法選擇動態添加到DOM中的元素。但是,您需要確保在添加新元素後調用eq()方法,否則將無法找到它們。

以上是jQuery速度測試:$(this)vs .get()vs .eq()的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板