更改ajax菜单中的图标?

时间:2011-09-15 12:25:20

标签: ajax menu

我有一个菜单,当点击一个项目时,我想将图标更改为其他颜色。我通过更改单击的图像的src来实现此功能! 我将src images / silver / icon.png更改为images / blue / icon.png

如果我点击一个项目(带有银色图标),则它会将颜色更改为蓝色(好)但是当我点击另一个项目时,第一个项目仍为蓝色,所以点击一下后,所有项目都是蓝色。 / p>

所以我需要的帮助是如何获取所有图像源而不是点击的图像源,并将它们更改为银色?或者,如果有另一种解决方案可能?谢谢!

我使用此代码:

$ (function() {
$("#menu > li > a").click(function() {

 //gets the image source
var menyitem = $(this).children("img").attr("src");


// searce and replace "silver" with "blue"
var changedSrc=menyitem.replace("silver", "blue");


// changes the attribute SRC with the new one
$(this).children("img").attr("src", changedSrc);


});
});

1 个答案:

答案 0 :(得分:0)

$(function() {
    $("#menu > li > a").click(function() {

        // reset all images
        $("#menu > li > a > img").attr("src", function(i, val) {
            return val.replace("blue", "silver");
        });

        //gets the image source
        var menyitem = $(this).children("img").attr("src");


        // searce and replace "silver" with "blue"
        var changedSrc = menyitem.replace("silver", "blue");


        // changes the attribute SRC with the new one
        $(this).children("img").attr("src", changedSrc);


    });
});