大家都知道我們使用$()產生的jquery物件可以使用下標去獲取對應下標的元素。
舉個栗子,乙個頁面有5個div標籤,我們使用$("div")去獲取到這些元素,然後我們就可以使用$("div")[0]去獲取到這個元素集合的第乙個元素。
function jquery()var a = new jquery();
console.log(a.length) //列印:1
console.log(a[0]); //列印:這是乙個id選擇器選擇到的節點
可以看到,這樣就實現了類陣列結構的實現,但是他依然不是乙個原生陣列結構,不能使用陣列的push,pop,shift,unshift等原生方法,只是可以通過下標獲取對應節點,還有length屬性而已。
jquery提供了乙個makearry方法,可以把類陣列結構轉化為真正的陣列結構
makearray方法使用規則:
下面是是makearray的原始碼:
functionmakearray(arr, results)
else
}}
下標獲取元素,eq()獲取元素,get()獲取元素的區別:
1. 陣列tds : 是一些jquery物件的集合
2. td = tds.eq(i):當然就是其中的某個jquery物件;
3. tds[i]:此時就是原始的dom物件;
4. tds[i].classname:呼叫原始dom物件的屬性classname;
5. tds.eq(i):返回的是jquery物件,當然沒有原始dom屬性classname
jquery 常用方法經典總結
1、關於頁面元素的引用
通過jquery的$()引用元素包括通過id、class、元素名以及元素的層級關係及dom或者xpath條件等方法,且返回的物件為jquery物件(集合物件),
不能直接呼叫dom定義的方法。
2、jquery物件與dom物件的轉換
普通的dom物件一般可以通過$()轉換成jquery物件。
如:$(document.getelementbyid("msg"))則為jquery物件,可以使用jquery的方法。
$("#msg").html();
$("#msg")[0].innerhtml;
$("#msg").eq(0)[0].innerhtml;
$("#msg").get(0).innerhtml;
3、獲取jquery集合的某一項
獲取其中的某一項(通過索引指定)可以使用eq或get(n)方法或者索引號獲取,
要注意,eq返回的是jquery物件,而get(n)和索引返回的是dom元素物件。
$("div").eq(2).html(); //呼叫jquery物件的方法
$("div").get(2).innerhtml; //呼叫dom的方法屬性
資料結構學習筆記 陣列
package com.cc.array public class myarray 陣列插入元素 param index param element throws exception public void insert int index,int element throws exception ...
資料結構學習筆記 稀疏陣列
資料元素之間一對一的關係 順序儲存結構 位址連續 陣列 和鏈式儲存結構 位址不連續 鍊錶 陣列 鍊錶 佇列 棧 2.1.1 需求 由圖分析 使用二維陣列儲存棋盤存在大量無用資料 使用稀疏陣列優化 2.1.2 稀疏陣列優化 思路 2.1.3 實現思路 二維陣列轉稀疏陣列 遍歷二維陣列,得到有效資料的個...
資料結構學習筆記(二)陣列與結構
許多程式設計師只把陣列看作 一片連續的記憶體區域 這只是陣列的實現方式,儘管陣列通常被實現為一片連續的記憶體區域,但實現並非陣列的全部。直觀上,陣列由下標 或稱為索引 和值所組成的序對集合,其中對於每個有定義的下標,都存在乙個與其關聯的值。當把陣列作為抽象資料型別時,更加關心的是能夠在陣列上執行的操...