推 ckw19:謝謝~寫的非常清楚 目的就是要減少撰寫取得物件的次數吧(?) 10/26 22:11
※ 引述《ckw19 (keep going)》之銘言:
: ※ 引述《ckw19 (keep going)》之銘言:
恕刪
: 有一段文字想請教版上的高手們!! 如下:
: $("div").hide().css("color", "blue").slideDown();
: 是否感到很神奇呢?在 jQuery 的架構設計上,大部分的函數都會在處理完該做的事情後
: VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
: ,再將原本傳入的元素給回傳回去,因此函數都可以連續這樣一個接著一個的使用。
: VVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
: 請問所謂把原本傳入的元素回傳回去,
: 是什麼原本傳入的元素?
: 又傳回去哪裡??
: 以上,麻煩各位了!!~ 感恩!~
要說明清楚的話,讓我們再一次看看這一行:
$("div").hide().css("color", "blue").slideDown();
寫成這樣就比較好懂了(?):
var jQueryObject1 = $("div");
var jQueryObject2 = jQueryObject1.hide();
var jQueryObject3 = jQueryObject2.css("color", "blue");
jQueryObject3.slideDown();
$ = jQuery($("div") = jQuery("div"))是一個Function
效用是「用CSS選擇器尋找元素,把結果包成一個jQuery Object」
所以我們今天 jQueryObject1 是一個 jQuery Object,裡頭紀錄所有找到的<div>
執行jQuery Object裡頭的Function時:
「對裡頭符合的元素做處理」+「處理完回傳原來的jQuery Object」
所以第二行就是把所有<div>藏起來,然後傳回原來的jQuery Object
之所以jQuery要這樣設計是為了能減少不必要的多餘程式碼撰寫吧我想。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.233.145.246