通过单击Img JavaScript切换图像

时间:2011-09-07 10:01:28

标签: javascript image toggle

我试图在两个图像之间切换,但需要js才能处理许多不同的图像。如何使用带有id的参数创建它?这是我到目前为止所得到的:

JS

    function changeIt(id) 
    {
        var theImg = document.getElementsByTagName('img')[0].src;

        var x = theImg.split("/");
        var t = x.length-1;
        var y = x[t];

        if(y=='red.gif')
        {
            document.images.boxcolor1.src='./pics/green.gif'
        }

          if(y=='green.gif')
        {
            document.images.boxcolor1.src='./pics/red.gif'
        }
    }

HTML

    <a href="#" onclick="changeIt('boxcolor1')"><img src='./pics/green.gif' name='boxcolor1' id='boxcolor1' border='0' /></a>   
    <a href="#" onclick="changeIt('boxcolor2')"><img src='./pics/green.gif' name='boxcolor2' id='boxcolor2' border='0' /></a>   
    <a href="#" onclick="changeIt('boxcolor3')"><img src='./pics/green.gif' name='boxcolor3' id='boxcolor3' border='0' /></a> 

正如您现在所看到的,它仅适用于第一个图像(boxcolor1)..我希望它可以通过名称或标记标记为所有图像工作。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

尝试:

function changeIt(id) 
{
    var theImg = document.getElementById(id),
             x = theImg.src.split("/"),
             t = x.length-1,
             y = x[t];

    if(y == 'red.gif')
    {
        theImg.src='./pics/green.gif'
    }

    if(y == 'green.gif')
    {
        theImg.src='./pics/red.gif'
    }
}

工作示例:

http://jsbin.com/ugofiz/edit