2010-05-04 19 views

回答

14

不,他們不會,所以更新只會在事件觸發時調用一次。

+0

太棒了!我有一個函數添加了需要多次調用的事件偵聽器。我擔心這會造成一些不良的副作用。 – user359519 2011-08-23 13:30:24

+1

這是否適用於匿名函數? – ThorSummoner 2014-05-08 17:39:51

+4

@ThorSummoner如果你多次定義了一個匿名函數(例如在循環中),每次都定義一個新函數。所以它不適用於匿名函數,除非你創建一次函數,將它保存在一個變量中,並將變量傳遞給你的'addEventListener'調用。無論如何,這是最好的做法。 – tomekwi 2015-01-09 11:49:43

3

取決於您將附加聽衆的內容。如果你附加到movieClipX和movieClipY,你將有兩個偵聽器,所以如果其中一個mcs被刪除,你仍然會有另一個偵聽器。如果您將同一個偵聽器連接到同一個對象兩次,它將表現爲單個偵聽器。

1

此外,爲了完成對已經提供的答案,如果你這樣做:

addEventListener(Event.ENTER_FRAME, update1); 
addEventListener(Event.ENTER_FRAME, update2); 

然後,它會執行兩個功能。後面的addEventLister不會覆蓋前一個,而是添加到現有的偵聽器中,因爲方法的名稱意味着(除非已經添加了偵聽器函數,在這種情況下,它將不會執行任何操作,如已接受的答案中所述) 。