这是幻灯片放映的功能,onmouseover我希望它停止。它不会停止播放幻灯片,而是加速?我如何纠正这个以阻止onmouseover?
<body onload="nextslide();">
function nextslide() {
// Hide current slide
var object = document.getElementById('slide' + current); //e.g. slide1
object.style.display = 'none';
// Show next slide, if last, loop back to front
if (current == last) {
current = 1;
} else {
current++;
}
object = document.getElementById('slide' + current);
object.style.display = 'block';
var timeout = setTimeout(nextslide, 2500);
object.onmouseover = function(){
clearTimeout( timeout );
}
object.onmouseout = nextslide;
}
答案 0 :(得分:3)
我尝试了你的代码,我能看到的唯一问题就是“onmouseout”,可以立即过渡到下一张幻灯片。我会改变这一行:
object.onmouseout = function() {
timeout = setTimeout(nextslide, 2500);
}
我不同意Jared,因为你使用嵌套函数而内部函数可以访问外部函数作用域,所以在那里定义了“timeout”。在定义变量时,不应该省略var。