javascript - javascript对onclick事件的奇怪动作
问题描述
你好!我正在尝试创建一个轮播/图像滑块,它是自动的并且可对 onclick 事件做出反应,但由于某种原因,onclick 事件会破坏滑块的自动流程,即使代码非常合理!
有人可以告诉我这段代码有什么问题以及解决它的方法吗!谢谢你!
var i = 0;
var images = [];
var time = 3000;
images[0] = "https://cache.lovethispic.com/uploaded_images/162514-Just-Breathe.jpg";
images[1] = "https://cache.lovethispic.com/uploaded_images/162513-Be-Someone-s-Sunshine.jpg";
images[2] = "https://cache.lovethispic.com/uploaded_images/162508-Don-t-Cry-.jpg";
var nextbutton=document.querySelector("#rightbutton");
nextbutton.addEventListener("click",rightbuttonclick);
var prevbutton=document.querySelector("#leftbutton");
prevbutton.addEventListener("click",leftbuttonclick);
function rightbuttonclick(){
i++;
changeImg();
}
function leftbuttonclick(){
i--;
changeImg();
}
function changeImg(){
document.getElementById('startersliders').src = images[i];
if(i < images.length - 1){
i++;
}
else {
i = 0;
}
// Run function every x seconds
setTimeout("changeImg()", time);
}
function changenext(){
i++;
changeImg();
}
// Run function when page loads
window.onload=changeImg;
<button id="leftbutton">left</button>
<img id="startersliders" width="400" height="200"/>
<button id="rightbutton">right</button>
解决方案
这是一个可以帮助你的代码,
var prevbutton=document.querySelector("#leftbutton");
//nextbutton.addEventListener("click",leftbuttonclick);
prevbutton.addEventListener("click",leftbuttonclick);
推荐阅读
- python - 创建一个带有链接的矩阵
- sql-server - 按降序排序并继续使用同一组
- javascript - Javascript fetch 不工作,邮递员工作正常
- svn - 在 macOS Mojave 上使用 sourcetree / git-svn 得到“Can't locate SVN/Core.pm in @INC”
- selenium - 当我们使用现有会话连接到浏览器时,鼠标悬停操作在 selenium 中不起作用
- c - scanf("%d", &num) 的状态为 0 或 1
- c# - ASP .NET Core 2.1 从 appsettings.json 获取变量,无需 Startup.cs
- jquery - Rails 和 JQuery 选择下拉菜单 - 如何保留所选值
- python - SQLite3 导出数据
- android - 使用 RetroFit2 执行发布请求时出现 NullPointerException