Javascript 在数组对象中移动 .active 类
Javascript Move .active class within array objects
如果我有一个包含四个图像的div
<div id='imgs' class='sectionImage'>
<img id='imgj1' imgn='1' class='carouselImage carouselActive' src='img/image1.jpg'/>
<img id='imgj2' imgn='2' class='carouselImage' src='img/image2.jpg'/>
<img id='imgj3' imgn='3' class='carouselImage' src='img/image3.jpg'/>
<img id='imgj4' imgn='4'class='carouselImage' src='img/image4.jpg'/>
</div>
我将如何设置一个数组和函数,通过将活动类移动到下一个图像并保持循环来滚动数组中的四个图像?请只做Javascript...无库
定义两个函数:一个用于转到下一个,另一个用于转到上一个:
function gotoNext() {
var active = document.querySelector(".carouselImage.carouselActive"); //select active image
if (active == null) { //if no active image select the first
document.querySelector(".carouselImage[imgn='1']").className += " carouselActive";
} else {
active.className = "carouselImage";
var curId = active.getAttribute("imgn"); //imgn of selected image
var next = document.querySelector(".carouselImage[imgn='" + (++curId) + "']"); //next image. if there is no next image select the first
if (next == null) document.querySelector(".carouselImage[imgn='1']").className += " carouselActive";
else next.className += " carouselActive";
}
}
function gotoPrev() {
var active = document.querySelector(".carouselImage.carouselActive"); //select active image
if (active == null) { //if no active image select the first
document.querySelector(".carouselImage[imgn='1']").className += " carouselActive";
} else {
active.className = "carouselImage";
var curId = active.getAttribute("imgn"); //imgn of selected image
var prev = document.querySelector(".carouselImage[imgn='" + (--curId) + "']"); //prev image. if there is no prev image select the last
if (prev == null) document.querySelector(".carouselImage[imgn='4']").className += " carouselActive";
else prev.className += " carouselActive";
}
}
注意:最好替换类名 = ...具有可以删除或添加类的函数。例如,jquery 有 removeClass("className") 和 addClass("className")。还有jquery的实现。
相关文章:
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 正在SharePoint 2013母版页中添加JQuery移动文件
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如何使用phaser使html5游戏在移动设备浏览器上运行
- FabricJs-限制主对象内添加对象的移动区域
- 如何从画布上的某个移动事件中获取X和Y
- 触摸移动时切换到新元素
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 停止jQuery UI滑块移动超过给定值
- 谷歌地图API v3不适用于移动浏览器或PhoneGap
- 如何将chrome扩展功能移植到移动设备(特别是jquery和trello)
- JQuery移动动态分区页面
- XMLHttpRequest在移动设备上的chrome上不起作用
- 如何使bxslider仅在移动视图中处于活动状态
- css停止图像在滚动中移动
- jquery移动对齐按钮取决于内容大小
- 背景图像顶部的滚动图像不移动
- 如何在react js中移动第二个组件
- Javascript 在数组对象中移动 .active 类
- Azure 网站单一登录以用户身份从 Azure Active Directory 访问 Azure 移动服务