Skip to content

イベントハンドラにイベント処理中の要素を操作するためのショートカット引数を追加 #184

Description

@simdy

通常イベントハンドラを(elem.addEventListener()で)追加すると、thisはそのハンドラを追加した要素そのものを指す。
一方、hifiveのコントローラのイベントハンドラではthisはコントローラインスタンスを指す。

ver.1.1.3までは、現在のイベント発生要素を操作したい場合は
context.event.currentTarget(または.target)として要素を参照する必要があるが、
イベントハンドラではその対象要素を操作したい場合が多いので、
上記の場合の"this"に相当するショートカット引数を追加する。

具体的には、イベントハンドラの第2引数にcontext.event.currentTargetをセットするようにする。
addEventListener()の場合のthisに相当するのは(targetではなく)currentTargetと考えるのが自然なので、currentTargetをセットする。

また、その際予めjQueryでくるんだ状態で渡すようにする(ユーザーがくるむ手間を省くため)。
くるむかどうかはsettingsで設定可能にする。

なお、この引数はインターセプタでも同様に参照可能(invocation.args[1]を参照すればよい)。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions