Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
ここでデモを参照してください: http://jsfiddle.net/mA6qm/1/ (コンソールを展開)
2 つのオブジェクト間でイベントが送受信されないのに、同じコードをグローバル スコープに配置すると正常に動作するのはなぜですか?
問題は、イベントをバインドしているオブジェクトが、イベントをトリガーしているオブジェクトと同じではないことです。setTimeoutコールバックでは、そのオブジェクトのメソッドとして定義してもthis参照されません。代わりに、ウィンドウを参照します。同様に、イベントをバインドすると、イベントはバインドされました。両方に同じオブジェクトを使用していることを確認する必要があります。calling_objectfinishedlistening_object
setTimeout
this
calling_object
finished
listening_object