台灣最大程式設計社群網站
線上人數
1105
 
會員總數:246046
討論主題:189630
歡迎您免費加入會員
討論區列表 >> AJAX / JSON / jQuery >> jquery擴充check
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
jquery擴充check
價值 : 5 QP  點閱數:698 回應數:1
樓主

町風
初學者
229 213
1974 203
發送站內信

下面程式可以讓jquery有.check()屬性裡面有各種檢驗方法
如$("#v1").check().email()

但我不太懂這怎麼做到的,有人可以解釋一下嗎
(function($) {
var wshc = $.fn.check = function(){
return wshc.fn.init(this);
} ... })(jQuery);




搜尋相關Tags的文章: [ jquery擴充check ] ,
本篇文章發表於2015-10-30 17:13
1樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
這是jquery一種建立plus的方式。
要說明的話,正常來說用如下的語法

就可以宣告你要的插件。(myPlugin 就是你的插件名稱,記得不要跟其它名稱衝突)

但一般正確的建立方式最好是用


return this.each的用意,就是確保如果宣告到複數元件時。可依次處理使用。

先了解以上的定義規則之後,再來說明你這段程式碼的用意。
簡單來說,當你運行了$("#v1").check().email()
其運行原理如下
1.先進行 25 ~27 。在此因為已經有宣告了一個plus是check。所以理所當然是跑這一段了。
2.他回傳的方式是利用了 wshc.fn.init(this)。也就是說先給它去跑以下init的對應方式。也就是第36~38行
3.在36~38行,獲取了其fn的名稱。也就是後面的email。並此依此名稱來對應跑其對應到的email也就是第87~90行
4.在87~90做正則條件取得後。並將其回傳到mat的函數處理也就是170~175。
5.在mat中就是做判斷處理,並回傳真偽值。

以上就是其運行的流程。如果看不明白,你就還得再加強了。
本篇文章回覆於2015-10-31 14:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.