更改图像jQuery


Change Image jQuery

我不是jQuery的新手,但这应该可以工作,而且不是:

html:

<a href='<?=$s['url'];?>' class='playbutton'><img src='http://i.domain.net/icons/play.png' width=20></a>

jquery $("a.playbutton").click():

$(this).find("img").attr("src","http://i.domain.net/icons/stop.png");

如果我将attr更改为addClass("jimbo"),我会将类jimbo添加到我的图像中。因此,它发现img标记很好,但不会更改源。有人能告诉我为什么吗?

完整的jquery功能是:

$("a.playbutton").click(function(e) {
    var current = $("#jplayer").data().jPlayer.status.src
    var playing = current.split("/");
    var href = encodeURIComponent($(this).attr("href"));
    if(playing[3] != href) {
        $("#jplayer").jPlayer("setMedia", {mp3: "http://mp3.domain.net/" + href});
        $("#jplayer").jPlayer("play");
        $(this).find("img").attr("src","http://i.domain.net/icons/stop.png");
        $("a.playbutton > img").each(function () {
            $(this).attr("src","http://i.domain.net/icons/play.png");       
        });
    } else {
        $("#jplayer").jPlayer("stop");
        $("#jplayer").jPlayer("clearMedia");
    }
    return false;
});

$(this).find("img").attr..线外一切正常。就像我说的,如果我把attr改为addClass,它会很好地添加类。这意味着它可以找到正确的<img>标签。

(URL已更改为domain.net(

使用道具代替属性

$(this).find("img").prop("src","url");

也许您忘记在回调中添加return false,请查看:http://jsfiddle.net/YnT5L/1/

$("a.playbutton").click(function() {
    $(this).find("img").attr("src","http://i.domain.net/icons/stop.png");
    return false;
});