溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

AS3事件流怎么實現(xiàn)

發(fā)布時間:2021-12-30 16:57:46 來源:億速云 閱讀:115 作者:iii 欄目:開發(fā)技術

這篇文章主要講解了“AS3事件流怎么實現(xiàn)”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“AS3事件流怎么實現(xiàn)”吧!

首先,設置一次測試環(huán)境:

AS3事件流怎么實現(xiàn)

代碼如下:

		var $a : MovieClip = ResLibrary.instance.getMovieClip("A");
		$a.x = (stage.width - $a.width )>>1;
		$a.y = (stage.height - $a.height )>>1;
		stage.addChild($a);
		
		var $b : MovieClip = ResLibrary.instance.getMovieClip("B");
		$b.x =  ($a.width - $b.width )>>1;
		$b.y = ($a.height - $b.height )>>1;
		$a.addChild($b);
		
		var $c : MovieClip = ResLibrary.instance.getMovieClip("C");
		$c.x = ($b.width - $c.width )>>1;
		$c.y = ($b.height - $c.height )>>1;
		$b.addChild($c);
		
		$a.addEventListener(MouseEvent.CLICK,this.ClcikHandler,true,0,false);

Click回調(diào)方法:

		private function ClcikHandler( event : MouseEvent ):void
		{
			trace( event.target , event.currentTarget );
		}

依次單擊C ,B ,A的結(jié)果:單擊A根本就沒有反應

AS3事件流怎么實現(xiàn)

如果把$a的單擊注冊事件改成:

$a.addEventListener(MouseEvent.CLICK,this.ClcikHandler,false,0,false);

就是將第三個參數(shù)改為false , 則結(jié)果為:單擊A有反應

AS3事件流怎么實現(xiàn)

addEventListener的第三個參數(shù)如果為false(默認為flase), 回調(diào)事件會在冒泡狀態(tài)的時候執(zhí)行 ;否則會在目標狀態(tài)執(zhí)行。當參數(shù)為true時 ,在A上注冊,不存在冒泡狀態(tài) , 回掉函數(shù)不會執(zhí)行。

事件機制的3個階段

Event有一個屬性:eventPhase,可以為以下3個值:

  • 捕獲階段 (EventPhase.CAPTURING_PHASE)。

  • 目標階段 (EventPhase.AT_TARGET)。

  • 冒泡階段 (EventPhase.BUBBLING_PHASE)。

感謝各位的閱讀,以上就是“AS3事件流怎么實現(xiàn)”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對AS3事件流怎么實現(xiàn)這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

as3
AI