文件是别名?

时间:2012-04-08 17:01:22

标签: javascript

文档是JavaScript中Sys.UI.DomElement的别名吗? 我遇到过this example in msdn

$addHandler(Sys.UI.DomElement.getElementById("Button1"), "click", toggleCssClassMethod);

我过去只看到document.getElementById(id)。提出这个问题。这听起来很糟糕。但我只是JS世界的孩子。

2 个答案:

答案 0 :(得分:2)

不,document不是Sys.UI.DomElement的别名。这可以通过IE javascript控制台中的快速实验来证明。

document.name = "hello";
console.log(Sys.UI.DomElement.name);  // Prints undefined

答案 1 :(得分:2)

不,两者不一样。我认为你的困惑可能来自于getElementById仅属于document的函数的常见误解。实际上,您可以在其他DOM元素上使用getElementById。这样的事情很好用:

document.getElementById("test").getElementById("test2")

http://jsfiddle.net/CNc2s/

请注意,第一次调用返回的DOM元素正在调用getElementById的第二次调用。这将在具有test2测试的元素中找到id为id的元素。

您经常看不到这样的事情的原因是id在文档中必须是唯一的。因此,在文档上调用它将获得与在包含元素上调用它相同的元素。