我有一个带有图像的li标签列表。当用户点击特定链接时,我想要更改图像。当用户点击新的li标签时,最后的li标签应该重置。我做了所有事情,除了为特定的li标签设置新图像。主要问题是我没有向函数传递任何参数。
$(document).ready(function(){
$(".sized ul li a").click(function(){
$('.sized ul li a img').each(function(){$(this).remove(); }); // Removing all images
$('.sized ul li a ').each(function(){$(this).append('<img src="1.png" />'); });// Reset the images
});
答案 0 :(得分:1)
我不明白为什么不传递任何参数是个问题。
不要为所有链接删除和添加新图像,只需更改之前单击的图像即可。您只需使用.attr()
更改其src
属性即可更改图片:
$(function() {
var $prev;
$(".sized ul li a").click(function(){
if($prev) {
$prev.find('img').attr('src', '1.png');
}
$prev = $(this).find('img').attr('src', 'new-url-here').end();
});
});