DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> 關於jQuery中的end()使用方法
關於jQuery中的end()使用方法
編輯:JQuery特效代碼     
在官方的API上是這樣描述end()方法的:“回到最近的一個"破壞性"操作之前。即,將匹配的元素列表變為前一次的狀態。”;
看樣子好像是找到最後一次操作的元素的上一元素,在如下的例子中:
html代碼:
代碼如下:
<div>測試內容1</div>
<div>測試內容2</div>

jQuery代碼:
代碼如下:
$('<p>新增內容</p>').appendTo('div').addClass('c1').end().addClass('c2');

得到的結果是:
代碼如下:
<div>測試內容1 <p class="c1 c2">新增內容</p></div>
<div>測試內容2 <p class="c1">新增內容</p></div>

這裡我就有一點不太明白了,怎麼只有第一個<p>標簽有兩個樣式,end()方法後返回的是什麼,在火狐裡添加了監控,得到如下結果:
1.$('<p>新增內容</p>').appendTo('div')返回的是:[p,p]對象數組,即新增後的兩個p標簽;
2.$('<p>新增內容</p>').appendTo('div').addClass('c1')返回的是:[p.c1,p.c1]對象數組,即添加了c1類樣式後的p對象數組;
3.$('<p>新增內容</p>').appendTo('div').addClass('c1').end()返回的是[p.c1],是第1個<div>中的<p>,在2操作中,最後“破壞”的是第2個<div>中的 <p>,所以他的前一次操作的對象是第1個<div>中的<p>,返回的就是它;
4.$('<p>新增內容</p>').appendTo('div').addClass('c1').end().addClass('c2')返回的仍然是第1個<div>中的<p>;
現在算是有點明白了,關鍵是要搞清楚最後一次操作的元素的上一元素是什麼。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved