在Kotlin中访问HTML DOM属性的规范方法是什么?我没有看到像<?php openForm(); ?>
<?php include "Title.php"; include "Content.php"; ?>
<button type='submit'>Submit</button>
<?php closeForm(); ?>
&amp; offsetHeight
offsetWidth
Element
答案 0 :(得分:4)
只需将e
投射到HTMLElement
,即可获得您期望的所有属性。
(e as HTMLElement).offsetHeight
这不是Kotlin的一个功能,我在一个普通的JS文档中找到了它:https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetHeight
同时强>
你提出一个'规范'的做事方式是正确的,因为Kotlin在内部与JavaScript完全不同。以下是我将如何处理您的代码段:
val e = document.getElementById("text")!! as HTMLElement
e.offsetHeight
在代码中使用val
代替var
。它声明了固定的引用并允许一些代码优化。 http://kotlinlang.org/docs/reference/properties.html#properties-and-fields
如果您不需要,请不要使用Element?
等可空类型。在这种情况下,您可能非常确定您的DOM结构,因此getElementById("text")
必须返回一个元素,而不是null。在那里放置一个null-assertion !!
以放松你的想法。如果您的JS使用未知的html,我会更好地处理这种情况:
val e = document.getElementById("text") as? HTMLElement ?: throw RuntimeException("the DOM has no 'text' id")