-2
<body> 
    <div id="page"> 
    <img id="slot0" class=slot src="crab.gif" width="120" height=80>
    <img id="slot1" class=slot src="sun.gif" width="120" height=80>
    <img id="slot2" class=slot src="sail.gif" width="120" height=80>

下面我想用 y 代替 0, 1 & 2

var slotValues = new Array(3);
var slots = new Array ('0','1','2');

for (y=0;y<=slots.length;y++){

slotValues.push (document.getElementById("slot" + slots[y]));}

但是 IE 说document.getElementById("slot" + slots[y])不是一个对象,虽然我认为它是,如果我更改slot[ y]为 0,它可以找到但它不是动态的。你能检查一下我哪里出错了。

4

1 回答 1

1

IE说它不是一个对象。但它是

宁愿相信了解 DOM 的人。

您的问题似乎是您的for (y=0;y<=slots.length;y++)-loop 迭代 0、1、2 和 3,因为3 < slots.length- 但您的数组只有 3 个项目并且slots[3]undefined. 将循环更改为

for (var y=0; y<slots.length; y++) {
于 2013-01-20T09:24:11.220 回答