javascript:多站图像切换

javascript:多站图像切换,javascript,toggle,Javascript,Toggle,我正在尝试在我的网站上设置一个图像按钮,切换墙纸更改频率选项(关闭,5、10、15、30、30、90分钟)。我已经为每个步骤创建了一个自定义图像(因此用户可以知道当前设置)。当实现时,用户应该能够反复点击按钮切换所有7个选项,最终循环回到开始 我有一些代码可以在两张图片(如下)之间交换,并在网站上使用了其他选项(打开/关闭壁纸),但我就是想不出一种方法来让代码满足我的新需求 if (imageId == 'image1') { if (document.getElementById) {

我正在尝试在我的网站上设置一个图像按钮,切换墙纸更改频率选项(关闭,5、10、15、30、30、90分钟)。我已经为每个步骤创建了一个自定义图像(因此用户可以知道当前设置)。当实现时,用户应该能够反复点击按钮切换所有7个选项,最终循环回到开始

我有一些代码可以在两张图片(如下)之间交换,并在网站上使用了其他选项(打开/关闭壁纸),但我就是想不出一种方法来让代码满足我的新需求

if (imageId == 'image1') {
    if (document.getElementById) {
        var img = document.getElementById(imageId);
        img.src = (img.src.indexOf("40_unlocked.jpg") != -1) ? "40_locked.jpg" : "40_unlocked.jpg";
    }
}
我希望我需要确定当前图像,然后使用开关前进到下一个选项,如下图所示,但我不知道如何确定当前图像-希望有人能提供建议-提前感谢

function changeIt(img) {
    var src;
    switch (img.id) {
        case "example":
            src = "n.gif";
            break;
        case "example2":
            src = "n2.gif";
            break;
        case "example3":
            src = "n3.gif";
            break;
    }
    img.src = (img.src.indexOf("jj.gif") < 0 ? "jj.gif" : src);
}
功能更改IT(img){
var-src;
开关(img.id){
案例“示例”:
src=“n.gif”;
打破
案例“示例2”:
src=“n2.gif”;
打破
案例“示例3”:
src=“n3.gif”;
打破
}
img.src=(img.src.indexOf(“jj.gif”)<0?“jj.gif”:src);
}

这应该让您开始
将图像命名为n0.gif到n6.gif

toggle.onclick=function(){
  //isolate the number of the current image
  var num=this.src.split('.gif')[0].split('n')[1]-0;
  //add 1 and take mod 7 to loop it back to 0 if it needed
  num=++num%7;
  //set the src to the new image
  this.src='n'+num+'.gif';
}

尝试创建一个包含所有src URL的数组&然后像这样切换它

function changeIt(img)
{
    var src=img.src;
    images=['src1','src2','src3','src4','src5','src6','src7'];
    index=images.indexOf(a);
    if (index+1>6)
    {
        index=0;
    }

    else
    {
        index+=1;
    }
    img.setAttribute('src',images[index]);
}

看起来您正在尝试使用javascript切换图像更改频率。您应该完全放弃它,使用jQuery。@Domecraft-我还不需要冒险使用jQuery,这能让我在客户端保留所有内容吗?是的。使用javascript制作动画时,jQuery使您的生活变得更加轻松。