翻转脚本无法正常工作

时间:2011-09-18 08:21:24

标签: javascript

我正在尝试让鼠标滚动。即,当用户将指针放在图像鼠标上时,触发事件并且阵列中的下一个图像结束。但是当我运行此脚本时没有发生任何事情:

window.onload = startRollOver;

var pictures = new  Array("1.jpg","2.jpg","3.jpg","4.jpg","5.jpg","6.jpg","7.jpg","8.jpg");
var i = 0;

function startRollOver() {
document.getElementById("picture").src.onmouseover = createRollOver();
}

function createRollOver() {
if(i<=7)
   return pictures[i++];
 if(i>7) {
    i=0;
    return pictures[i];
 }
}

我哪里错了?

2 个答案:

答案 0 :(得分:1)

您在字符串“src”上设置“onmouseover”而不是在DOM元素上设置。您需要在DOM元素上设置事件。

window.onload=startRollOver;

function startRollOver() {
    document.getElementById("picture").onmouseover = function (e) {
        e.target.src = createRollOver();
    };
}

function createRollOver() {
    // ...
}

答案 1 :(得分:1)

.src.onmouseover没有多大意义。您应该为onmouseover分配一个函数,以便在鼠标移过元素时调用该函数:

document.getElementById("picture").onmouseover = function() { // is executed when mouse is over element
    this.src = createRollOver(); // each time it is called, change the src
};

此外,您可以使用更方便的方式声明数组:

["1.jpg", "2.jpg", ...]