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

jQuery操作Dom元素與遍歷以及JS遍歷詳細(xì)講解

 更新時(shí)間:2023年01月17日 11:33:51   作者:六六的小帥  
這篇文章主要介紹了jQuery操作Dom元素、jQuery遍歷、JavaScript遍歷,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧

jQuery操作Dom元素

jQuery的主要用法為“選擇某個(gè)dom元素,再對(duì)其進(jìn)行某種操作”;jQuery一般簡寫成“$”。使用CSS選擇器獲取元素

  $(document) //選擇整個(gè)文檔對(duì)象
  $('#myId') //選擇ID為myId的網(wǎng)頁元素
  $('div.myClass') // 選擇class為myClass的div元素
  $('input[name=first]') // 選擇name屬性等于first的input元素

使用jQuery特有的表達(dá)式獲取

  $('a:first') //選擇網(wǎng)頁中第一個(gè)a元素
  $('tr:odd') //選擇表格的奇數(shù)行
  $('#myForm :input') // 選擇表單中的input元素
  $('div:visible') //選擇可見的div元素
  $('div:gt(2)') // 選擇所有的div元素,除了前三個(gè)
  $('div:animated') // 選擇當(dāng)前處于動(dòng)畫狀態(tài)的div元素

jQuery的鏈?zhǔn)讲僮?,選中某個(gè)dom元素后進(jìn)行一系列操作

	// 案例
   $('div').find('h3').eq(2).html('Hello');
	// 分解
  $('div') //找到div元素
     .find('h3') //選擇div元素中的h3元素
     .eq(2) //選擇第3個(gè)h3元素
    .html('Hello'); //將它的內(nèi)容改為Hello	
  // 之所以可以這樣操作,是因?yàn)槊恳徊降膉Query操作返回的都是一個(gè)對(duì)象
  // jQuery還提供了.end()函數(shù),可以使結(jié)果后退一步
  $('div')
   .find('h3')
   .eq(2)
   .html('Hello')
   .end() //退回到選中所有的h3元素的那一步
   .eq(0) //選中第一個(gè)h3元素
   .html('World'); //將它的內(nèi)容改為World  

jQuery創(chuàng)建Dom元素:只要把新元素直接傳入jQuery的構(gòu)造函數(shù)就行。(注意:jQuery構(gòu)造函數(shù)括號(hào)中的內(nèi)容使用單引號(hào),不要使用雙引號(hào),因?yàn)閱我?hào)可以直接進(jìn)行字符串拼接,否則無法區(qū)分class后面的雙引號(hào))

  $('<p>Hello</p>'); // 注意使用單引號(hào)
  $('<li class="new">new list item</li>');
  $('ul').append('<li>list item</li>');

jQuery移動(dòng)元素有兩種方式

  • 直接移動(dòng)該元素
  • 移動(dòng)其它元素
	// 選中一個(gè)div元素,將它移動(dòng)到p元素的后面
	// 方式一
	$('div').insertAfter($('p'));
	// 方式二
	$('p').after($('div'));

表面上看,這兩種方法的效果是一樣的,唯一的不同似乎只是操作視角的不同。但是實(shí)際上,它們有一個(gè)重大差別,那就是返回的元素不一樣。第一種方法返回div元素,第二種方法返回p元素。你可以根據(jù)需要,選擇到底使用哪一種方法。

7. jQuery插入元素

  .insertAfter()和.after():在現(xiàn)存元素的外部,從后面插入元素
  .insertBefore()和.before():在現(xiàn)存元素的外部,從前面插入元素
  .appendTo()和.append():在現(xiàn)存元素的內(nèi)部,從后面插入元素
  .prependTo()和.prepend():在現(xiàn)存元素的內(nèi)部,從前面插入元素

jQuery修改元素值,獲取元素值,給元素賦值(jQuery使用了同一個(gè)函數(shù),來完成取值(getter)和賦值(setter),即"取值器"與"賦值器"合一。到底是取值還是賦值,由函數(shù)的參數(shù)決定。賦值也可以對(duì)原來的屬性進(jìn)行修改。)

  $('h1').html(); //html()沒有參數(shù),表示取出h1的值
  $('h1').html('Hello'); //html()有參數(shù)Hello,表示對(duì)h1進(jìn)行賦值
	// 常用函數(shù)
  .html() 取出或設(shè)置html內(nèi)容
  .text() 取出或設(shè)置text內(nèi)容
  .attr() 取出或設(shè)置某個(gè)屬性的值 // 這個(gè)常用在修改iframe元素的src屬性
  .width() 取出或設(shè)置某個(gè)元素的寬度
  .height() 取出或設(shè)置某個(gè)元素的高度
  .val() 取出某個(gè)表單元素的值

jQuery遍歷幾種方式

選擇器遍歷兩種方式

	// 方式一
	$('div').each(function (i){
	   i就是索引值
	   this 表示獲取遍歷每一個(gè)dom對(duì)象
	});
	// 方式二
	$('div').each(function (index,domEle){
	  index就是索引值
	  domEle 表示獲取遍歷每一個(gè)dom對(duì)象
	});

另一種遍歷方式

	// 先獲取某個(gè)集合對(duì)象
	// 遍歷集合對(duì)象的每一個(gè)元素
	var d=$("div");
	$.each(d,function (index,domEle){
	  d是要遍歷的集合	
	  index就是索引值	
	  domEle 表示獲取遍歷每一個(gè)dom對(duì)	
	});

總結(jié):

  • jQuery遍歷主要用來遍歷Dom元素,獲取Dom元素的值,傳遞到服務(wù)端。
  • JavaScript的遍歷主要用來遍歷服務(wù)端返回的數(shù)據(jù),通過遍歷對(duì)象,結(jié)合jQuery給Dom元素賦值
  • jQuery的作用是為了方便對(duì)Dom進(jìn)行操作

JavaScript遍歷

數(shù)組遍歷

// for --使用變量將數(shù)組長度緩存起來,在數(shù)組較長時(shí)性能優(yōu)化效果明顯
for(var i=0,len=arr.length;i<len;i++){
	console.log("元素:"+arr[i]);
}
// forEach --ES5語法,對(duì)數(shù)組的每個(gè)元素執(zhí)行一次提供的函數(shù),不能使用break、return
arr.forEach(function(item,index,arr){
	console.log("元素:"+item+" 索引:"+index+" 整個(gè)數(shù)組:"+arr);
})
// map --ES5語法,創(chuàng)建一個(gè)新數(shù)組,其結(jié)果是該數(shù)組中的每個(gè)元素都調(diào)用一個(gè)提供的函數(shù)后返回的結(jié)果
arr.map(function(val,index){
	console.log("元素:"+val+" 索引:"+index);
	return val*val;
})
// for...of --ES6語法,可以遍歷Array、Set、Map、String、TypedArray、arguments等可迭代對(duì)象,可以使用break、continue
for(let item of arr){
	console.log("元素:"+item);
}

對(duì)象遍歷

// for...in --以任意順序遍歷一個(gè)對(duì)象自有的、繼承的、可枚舉的、非Symbol的屬性,對(duì)于每個(gè)不同的屬性,語句都會(huì)被執(zhí)行
for(var key in obj){
	console.log("屬性:"+key+" 值:"+obj[key]);
}
// Object.keys() --返回一個(gè)由一個(gè)給定對(duì)象的自身可枚舉屬性組成的數(shù)組,數(shù)組中屬性名的排列順序和使用for...in循環(huán)遍歷該對(duì)象時(shí)返回的順序一致
Object.keys(obj);
// Object.values() --返回一個(gè)給定對(duì)象自身的所有可枚舉屬性值的數(shù)組,值的順序與使用for...in循環(huán)的順序相同(區(qū)別在于 for-in 循環(huán)枚舉原型鏈中的屬性)
Object.values(obj);
// Object.getOwnPropertyNames() --返回一個(gè)由指定對(duì)象的所有自身屬性的屬性名(包括不可枚舉屬性但不包括Symbol值作為名稱的屬性)組成的數(shù)組
Object.getOwnPropertyNames(obj);

字符串遍歷

// for...of --ES6語法,可以遍歷Array、Set、Map、String、TypedArray、arguments等可迭代對(duì)象,可以使用break、continue
for(let char of string){
	console.log("字符:"+char);
}

到此這篇關(guān)于jQuery操作Dom元素與遍歷以及JS遍歷詳細(xì)講解的文章就介紹到這了,更多相關(guān)jQuery操作Dom元素內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論