【projectItemRenamer.jsx】二次調整 67【開発記】
今回の概略
ES では Event よりも UIEvent を使うのが正義っぽい😑
EventTarget を使う場合は何かの部品を継承するのが通常っぽい…😞
#jsx #開発記
#ExtendScript #AfterEffects
#Event
前回の粗筋
Event オブジェクト改修を運良く思い出す回🤤
Event
以前は探すのが難しかったけれど今回は少し手がかりが有るお🤤
それは ES は当初 E4X だと思っていたけれど実際は ES3 だという事が解っているので、その準拠内で資料をあたれば良いってトコ😑
E4X だと探しにくいけれど ES3 となればまだ探せる…ただ古くなってしまってるのでそういう意味では調査の難易度は相変わらず高い…😞
継承
………
"es3 event 継承" で引いたけどまぁ出てこないお…😞
あと自分の note が出てきちゃうのでよっぽど情報無いんだなって感じる🙄
………
やはり継承は無理ぽ😞
初期化
それじゃそもそも ES3 の Event の引数ってどうなってるぽ?🤔
現状では `new Event(etype,options)` で生成してるけどそもそも options を受け付けるのかどうかも怪しい😑
………
で………出てこない🙄
流石に ES3 の資料を探すのはもう厳しいっぽ?😞
……… Event についての言及が無いお…🙄
という事は前の仕様継承で略?😑
……… 2nd も 1st も Event オブジェクトに関する言及が無いお…😭
………😞
この記事の情報を見て思い出した…そういや Event ってこの時代、扱いが凄い面倒だったなって…🙄
ブラウザごとにやり方が異なってて………😑
………
やっぱり以前調べた通りこちらも情報が無いっぽい😞
少なくとも type を受け取る事だけは解っているんだけど…🙄
JavaScript Tools Guide に Event について書いてないかなって探したら「目的の階層でイベント対応を止めたいなら stopPropagation() 使え」っての発見🤤
前にバブリングで「イベントのバブリングを無効化するか処理側で止めるか」という検討をしたけどどうやら UI 処理に於いては停止メソドを呼ぶのが正しいっぽい😑
ぇー…バブリングしないイベント発行させてよー🤪
参照するなら DOM-Level-3 のを見ろって書いてあるぬ🤔
………どうやら UIEvent だか UIEventBase だかを使うと initEvent を呼び出す古のイベント生成ができるっぽい😑
確かに UIEvent というオブジェクトが存在してるお…🤤
でも MDN を見る限りだと initEvent を使う初期化方法はもう使わずに Event() コンストラクタにしろってあってまぁ現状では `new Event()` の方が良いのかなという感じする😑
JavaScript Tools Guide を見る限りでは UIEvent で行うのが正義っぽく、 Event() での方法は出てこなかったお…😞
必然的に EventTarget も UI 部品を基準にしてるので UI を絡めないイベント駆動を行いたい場合は手作りする他無い😞
ただ、 CustomEvent については UIEvent 継承でコンストラクタを工夫したらできるのでは?という期待は有る😑
今回は UI 側で helpTip が入ってたら stopPropagation で止める様に書き換えて上層と下層両方設定しても見れる様になるかを試そうかしらね🤤
本来の目的は Event オブジェクトのバブリングの無効化だけどコールバック内での無効化処理が効くかどうかを試しておくのは悪くない😑
次回は
helpTip を追加して stopPropagation でどうなる?🤤
この記事が気に入ったらサポートをしてみませんか?