首页 > Ext能直接用变量名获取dom节点吗?

Ext能直接用变量名获取dom节点吗?

我在项目中,一次偶然的机会,发现好像是可以用变量直接根据id读取html的dom,举例如下:
html:
<input type="hidden" id="type" value="100">

extjs
console.log(type.value);

控制台输出100

直接打印type变量,会输出这个input的dom内容(前提是你没有定义一个名为type的变量,就直接获取)
我谷歌了一下,没有发现类似的使用方式,不知道这么使用是什么原理?是js的缘故还是ext框架的缘故?


经尝试,这不是ext框架的原因,是js的缘故。

在chrome(beta),firefox(Aurora),ie11中尝试成功

但是由于id可能与本来就有的对象发生冲突,当发生冲突时,原有的会优先。

比如说<input id="window">会无法通过这种方式选取,在window对象中,没有value(window.value === undefined)。但是有innerHeight,表示原有的window对象优先。

这个我也没有找到资料,但是贴吧和百度知道中均有人发现,应该是一种不规范的写法,建议还是老老实实的getElementById,说不定以后就没了。

【热门文章】
【热门文章】