BUI基礎-方法和事件

控件的方法

由于BUI的控件是基于原型鏈的,所以BUI中控件的方法都是在prototype上的哺壶,可以調(diào)用自己的或者父控件定義的方法。

控件的事件

控件的事件是由Observable類定義的至扰,所有的控件都是此類的子類资锰,所以Observable的屬性和方法,所有控件都支持台妆。

Observable類的方法的API在最下面胖翰,主要有以下幾個:

  1. on : 注冊事件
  2. off: 移除事件
  3. fire:觸發(fā)事件

<pre class="prettyprint linenums" style="padding: 8px; background-color: rgb(247, 247, 249); border: 1px solid rgb(225, 225, 232); margin-top: 8px; box-shadow: rgb(251, 251, 252) 40px 0px 0px inset, rgb(236, 236, 240) 41px 0px 0px inset; color: rgb(51, 51, 51); font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">

  1. <script>

  2. var list = new List({

  3. //...

  4. });

  5. list.render();

  6. function callback(){}

  7. //注冊事件

  8. list.on('itemclick',callback);

  9. //觸發(fā)事件

  10. list.fire('itemclick');

  11. //移除事件

  12. list.off('itemclick',callback);

  13. </script>

</pre>

屬性與方法和事件

在上一章節(jié)里我們詳細的講述了屬性,屬性的設置和獲取有幾個相關的方法:

  1. get : 獲取屬性
  2. set : 設置屬性萨咳,觸發(fā)屬性更改事件
  3. setInternal : 設置屬性,不觸發(fā)屬性更改事件

在設置屬性值時鹃两,會觸發(fā)2個事件,beforeXxxChagne 和 afterXxxChange事件

<pre class="prettyprint linenums" style="padding: 8px; background-color: rgb(247, 247, 249); border: 1px solid rgb(225, 225, 232); margin-top: 8px; box-shadow: rgb(251, 251, 252) 40px 0px 0px inset, rgb(236, 236, 240) 41px 0px 0px inset; color: rgb(51, 51, 51); font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">

  1. <script>

  2. //構造類A

  3. var A = function(config){

  4. A.superclass.constructor.call(this,config); //將自己的配置項傳遞到BUI.Base的構造函數(shù)中

  5. };

  6. //定義屬性

  7. A.ATTRS = {

  8. a : {

  9. },

  10. b : {

  11. }

  12. };

  13. BUI.extend(A,BUI.Base); //使A繼承BUI.Base舀凛,支持屬性

  14. var a = new A({ //創(chuàng)建對象

  15. a : 'a',

  16. b : 'b',

  17. c : 'c'

  18. });

  19. a.on('beforeAChange',function(ev){

  20. alert(ev.newVal + ev.prevVal);

  21. });

  22. a.on('beforeCChange',function(ev){

  23. alert(ev.newVal + ev.prevVal);

  24. });

  25. a.get('a'); //'a'

  26. a.set('a','new a'); //觸發(fā)beforeAChange,觸發(fā)afterAchange

  27. a.get('a'); //new a

  28. a.setInternal('a','new a1'); //不觸發(fā)任何事件

  29. a.get('a'); //new a1

  30. a.get('c'); // c

  31. a.set('c','new c');

  32. </script>

</pre>

事件的API

下面只是簡單的列表猛遍,詳細信息請查看API文檔

下一步學習

BUI的方法和事件學習完成后馋记,你可以去看一下如何組織模塊CMD組織模塊,然后進入到BUI控件編寫的學習中宽堆。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末茸习,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子籽慢,更是在濱河造成了極大的恐慌涕刚,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杜漠,死亡現(xiàn)場離奇詭異,居然都是意外死亡盼樟,警方通過查閱死者的電腦和手機锈至,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來峡捡,“玉大人,你說我怎么就攤上這事们拙。” “怎么了砚婆?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長装盯。 經(jīng)常有香客問我,道長迄损,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任芹敌,我火速辦了婚禮,結果婚禮上拗引,老公的妹妹穿的比我還像新娘。我一直安慰自己矾削,他們只是感情好豁护,可當我...
    茶點故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著断部,像睡著了一般班缎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上达址,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天,我揣著相機與錄音疆虚,去河邊找鬼。 笑死径簿,一個胖子當著我的面吹牛嘀韧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播乳蛾,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼肃叶,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了因惭?” 一聲冷哼從身側響起绩衷,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤激率,失蹤者是張志新(化名)和其女友劉穎勿决,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體低缩,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡咆繁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了玩般。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡究驴,死狀恐怖匀伏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情帘撰,我是刑警寧澤,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布核行,位于F島的核電站蹬耘,受9級特大地震影響芝雪,放射性物質(zhì)發(fā)生泄漏综苔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一堡牡、第九天 我趴在偏房一處隱蔽的房頂上張望杨刨。 院中可真熱鬧,春花似錦妖胀、人聲如沸惠勒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽盾计。三九已至,卻和暖如春灼舍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背骑素。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工刚夺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人侠姑。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓莽红,卻偏偏與公主長得像妥畏,于是被迫代替她去往敵國和親安吁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,585評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 名稱 libev - 一個 C 編寫的功能全面的高性能事件循環(huán)网棍。 概要 示例程序 關于 libev Libev 是...
    hanpfei閱讀 15,307評論 0 5
  • ??JavaScript 與 HTML 之間的交互是通過事件實現(xiàn)的惑畴。 ??事件,就是文檔或瀏覽器窗口中發(fā)生的一些特...
    霜天曉閱讀 3,500評論 1 11
  • 配置項 配置項類實例化時的初始配置桨菜,決定對象的初始值捉偏,我們看一下示例: function A (a,b){ } v...
    學術報告板閱讀 426評論 0 0
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,444評論 0 17
  • 轉一篇文章 原地址:http://gank.io/post/560e15be2dca930e00da1083 前言...
    jack_hong閱讀 925評論 0 2