2011-11-07 88 views
0

当点击更多按钮时,“更多”按钮和精选图片的图片将会更改,当您点击更多按钮时,图片应该与第一张图片相同,但不是。jquery图像替换?

$(document).ready(function(){ 

    $('#buy_now').hide(); 
    $('#more').click(function() { 
     $("#more-btn").attr("src", "http://kilrush.mobi/kil/GetAssetFile?fileId=77470"); 
     $("#featur-btn").attr("src", "http://kilrush.mobi/kil/GetAssetFile?fileId=77472"); 
     $('#buy_now').toggle();    
    });  
}); 
+0

你能告诉我们一些html吗?看起来你正在改变按钮的src'属性而不是图像。 – Marnix

+0

你能告诉我们一个例子吗? – John

+0

欢迎来到stackoverflow。请以清晰的方式呈现您正在尝试做的事情。 -1直到你重新解决你的问题。 – Simon

回答

2

您需要存储原始来源然后恢复它。最好的办法是使用.toggle()的按钮和.data存储原始来源:

$(document).ready(function(){ 
    var btnMore = $("#more-btn"); 
    var btnFeature = $("#featur-btn"); 
    btnMore.data("org_src", btnMore.attr("src")); 
    btnFeature.data("org_src", btnFeature.attr("src")); 
    $('#buy_now').hide(); 
    $('#more').toggle(function() { 
     btnMore.attr("src", "http://kilrush.mobi/kil/GetAssetFile?fileId=77470"); 
     btnFeature.attr("src", "http://kilrush.mobi/kil/GetAssetFile?fileId=77472"); 
     $('#buy_now').show(); 
    }, function() { 
     btnMore.attr("src", btnMore.data("org_src")); 
     btnFeature.attr("src", btnFeature.data("org_src")); 
     $('#buy_now').hide(); 
    }); 
}); 

Live test case。 (和可爱的猫咪:))

+1

+1。是.toggle()是关键。您也可以像第一个直接指定第二个切换函数中的原始图像源,而不用通过调用.data()来存储源。 –

+0

感谢@iTypist的好处,但这仍然可以作为使用'.data()'的好例子,再加上它更灵活。如果他想要在其他地方的原始来源。 :) –