如何在JavaScript中停止鼠标悬停的间隔?
如何在JavaScript中停止鼠标悬停的间隔?,javascript,html,Javascript,Html,变量pics=[ “图像/城市(1.jpg)”, “图像/城市(2.jpg)”, “图像/城市(3.jpg)”, “图像/城市(4.jpg)”, “图像/城市(5.jpg)”, “图像/城市(6.jpg)”, “图像/城市(7.jpg)”, “图像/城市(8.jpg)”, “image/beach.jpg”, “image/beach2.jpg” ]; var inval; var照片; 函数旋转木马(){ photo=document.getElementById('carousel-pics
变量pics=[
“图像/城市(1.jpg)”,
“图像/城市(2.jpg)”,
“图像/城市(3.jpg)”,
“图像/城市(4.jpg)”,
“图像/城市(5.jpg)”,
“图像/城市(6.jpg)”,
“图像/城市(7.jpg)”,
“图像/城市(8.jpg)”,
“image/beach.jpg”,
“image/beach2.jpg”
];
var inval;
var照片;
函数旋转木马(){
photo=document.getElementById('carousel-pics');
var i=-1;
inval=设置间隔(函数(){
i++;
如果(i>=图片长度){
i=0;
}
photo.src=pics[i];
}, 1000);
}
函数removeInterval(){
清除间隔(无效);
}
document.getElementById('carousel-pics')。addEventListener(“鼠标悬停”,removeInterval);
我在这里看到的一个问题是
标签在脚本
标签下面。当您尝试在document.getElementById('carousel-pics')
处附加addEventListener
时,它将不起作用,因为此时document.getElementById('carousel-pics')
为空。尝试将script
放在html下面
让ele1=document.getElementById(“测试”)
console.log(“[1]”,ele1)
让ele2=document.getElementById(“测试”)
console.log(“[2]”,ele2)
我在这里看到的一个问题是
标签在脚本
标签下面。当您尝试在document.getElementById('carousel-pics')
处附加addEventListener
时,它将不起作用,因为此时document.getElementById('carousel-pics')
为空。尝试将script
放在html下面
让ele1=document.getElementById(“测试”)
console.log(“[1]”,ele1)
让ele2=document.getElementById(“测试”)
console.log(“[2]”,ele2)
如前所述
var pics=[
"https://images.unsplash.com/photo-1555797487-a1f30b5d8d55?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=589&q=400“,
"https://images.unsplash.com/photo-1533158307587-828f0a76ef46?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=1567&q=80“,
"https://images.unsplash.com/photo-1555797487-a1f30b5d8d55?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=589&q=400“
];
const photo=document.getElementById(“carousel pics”);
函数旋转木马(){
设指数=-1;
const inval=setInterval(函数(){
索引++;
如果(索引>=图片长度)(索引=0);
photo.src=pics[索引];
}, 1000);
return()=>clearInterval(无效)
}
const unsubscriber=carousel()
照片。添加了监听器(“鼠标悬停”,取消订阅)代码>
如前所述
改变顺序。正文div优先于脚本
更改图像的名称,它已断开
示例如下所示
var pics=[
"https://images.unsplash.com/photo-1555797487-a1f30b5d8d55?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=589&q=400“,
"https://images.unsplash.com/photo-1533158307587-828f0a76ef46?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=1567&q=80“,
"https://images.unsplash.com/photo-1555797487-a1f30b5d8d55?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=589&q=400“
];
const photo=document.getElementById(“carousel pics”);
函数旋转木马(){
设指数=-1;
const inval=setInterval(函数(){
索引++;
如果(索引>=图片长度)(索引=0);
photo.src=pics[索引];
}, 1000);
return()=>clearInterval(无效)
}
const unsubscriber=carousel()
照片。添加了监听器(“鼠标悬停”,取消订阅)代码>
我使用了与您发布和发布的代码完全相同的代码(我只更改了图像)。你能提供更多的信息吗?如何控制台
或一些样式
可以覆盖你的旋转木马(称为“mouseover”事件?记录它)。哦,太奇怪了!这是页面上唯一的脚本!控制台上显示:uncaughttypeerror:cannotreadproperty'addEventListener'在index.html:160处为null。我使用了与您发布和发布的代码完全相同的代码(我只更改了图像)。你能提供更多的信息吗?如何控制台
或一些样式
可以覆盖你的旋转木马(称为“mouseover”事件?记录它)。哦,太奇怪了!这是页面上唯一的脚本!控制台上显示:uncaughttypeerror:无法读取index.html:160处null的属性'addEventListener'