這工作:問題通過document.getElementById
alert(document.getElementById("Container").nodeName);
但這並不:
var CurParent = document.getElementById("Container");
alert(CurParent.nodeName);
我使用IE7。 爲什麼?
這工作:問題通過document.getElementById
alert(document.getElementById("Container").nodeName);
但這並不:
var CurParent = document.getElementById("Container");
alert(CurParent.nodeName);
我使用IE7。 爲什麼?
從您的最新評論,這似乎是一個變量範圍界定的問題。你確定var parent
是真的是全球?下面將不工作中,由於不正確的變量範圍:
function firstThing() {
var parent = document.body;
}
function secondThing() {
return parent;
}
firstThing();
secondThing(); // will return undefined
定義在最大範圍的變量,你打算使用它。以下將工作。
var parent;
function firstThing() {
parent = document.body;
}
function secondThing() {
return parent;
}
firstThing();
secondThing(); // will return document.body
呃......我不確定我是否相信。當你說它「不起作用」時,你是什麼意思? – Pointy 2010-04-02 19:51:00
這兩個片段都是相同的。問題在別處。你爲什麼認爲第二個不起作用? HTML文檔是否完全一樣? – 2010-04-02 19:52:26
這裏有一點要注意:IE會根據「id」*或*「name」值返回該例程中的元素。 – Pointy 2010-04-02 19:54:22