2011-06-06 71 views
0

我有兩個小部件正在偵聽MouseOutEvent。問題是,有時候這些事件不會在兩個widgeth上被調用,即使你將它們從鼠標中移出。 沒有錯誤引發,這是非常難以調試。 我的理解是,這個事件是由瀏覽器觸發的,所以我不明白爲什麼沒有發生。我正在將此事件註冊到小部件本身。MouseOver和MouseOut事件不會被小部件觸發

任何建議將是一個很大的幫助。

感謝

+0

你可以在這裏發佈你的代碼嗎? – RAS 2011-06-07 07:07:53

+0

你應該調試eventlistener是真的添加,我有GWT不添加偵聽器的情況。您還應該檢查在您的窗口小部件元素上是否存在其他DOM元素,並且窗口小部件元素確實具有您所期望的寬度和高度,例如包含浮動元素的某些元素沒有高度。 – 2011-06-07 19:10:49

回答

1

聽起來像是你可能已經使用addHandler操作註冊到您的MouseOverHandler。 Widget有兩種添加事件處理函數的方法,addDomHandler和addHandler。第一個意思是用於DomEvents,例如MouseOutEvents。它會將事件吸收到小部件上,這意味着您的偵聽器將得到通知(這隻對DomEvents是必需的)。如果您不使用addDomHandler註冊處理程序,那麼這些事件可能不會被解僱。