通过HTML对象获取子元素

时间:2013-07-24 19:55:28

标签: javascript html if-statement

我正在尝试重用变量“startGame”变量,我通过该变量声明要附加到“table”元素的“a”元素,以便在后面测试它自己的存在。我为此编写的代码如下:

//Helper function to set HTML Tags attributes
function setAttributes(element, attributes)
{ for (var key in attributes) { element.setAttribute(key, attributes[key]); } }

//Opening screen
var startGame = document.createElement("a");
setAttributes(startGame,
{
    "style" : "float:left; width: 100%; text-align: center;",
    "onclick" : "dealHands()"
});
startGame.appendChild(document.createTextNode("Play"));

var table = document.getElementById("table");
table.appendChild(startGame);

function dealHands()
{
    if (table.childNodes[0].nodeValue == startGame)
    { table.removeChild(startGame); }
    ...
}

到目前为止,代码无法察觉“startGame”并且没有任何反应。

2 个答案:

答案 0 :(得分:0)

您无法使用此设置样式属性:

"style" : "float:left; width: 100%; text-align: center;"

必须单独设置。但IE不支持以这种方式更改style。你需要:

element.style.cssFloat = "left";    // etc.

Discussed here

另外,我不会将table用作身份证。

答案 1 :(得分:0)

我只需要从if语句中删除“.nodeValue”,以便在两个HTML元素之间进行比较,而不是将值与HTML元素进行比较。