2017-05-26 16 views
1

私は、次のイベントリスナーがあります。Scala.jsのクリックイベントリスナー内のタグ名を取得する方法は?

dom.document.addEventListener("click", (e: MouseEvent) => { 
     dom.console.log(e.target.tagName) 
}) 

をそして私は、ターゲットのtagNameを取得したいです。残念ながらe.target.tagNameは機能しません(コンパイルエラーvalue tagName is not a member of org.scalajs.dom.raw.EventTarget)。どのように私はそれを修正することができますどのような考え?

答えて

3

あなたはキャストを必要とする:彼らはとても緩やかに型付けされているので、イベントを扱うとき

e.target.asInstanceOf[org.scalajs.dom.raw.Element].tagName 
+2

うん、この種のものが一般的です。特定のフィールドが特定のタイプであることを知っていることがよくありますが、正式には必ずしもそうであるとは限りません。だから、 "これが本当に何であるかは分かっている"と言うには、手動キャストをしなければならない。 –

関連する問題