2010-09-07 111 views
1

下面的代码不能工作吗?使用jquery将图像源更改为另一图像的源

$('.elastica').click(function(){ 
    document.getElementById('bigimage').attr('src')= $(this).attr('src'); 
}); 

它不会更改网站上的东西。 我也尝试过通过其他图像的id输出图像位置,但它出现空(字面意思是“”)。当我将其他图像的src输出到一个带有innerHTML文本的div框时,它会以未定义的方式出现。

无论哪种方式,它不会更新bigimage的src。

回答

1
$('.elastica').click(function(){ 
    $('#bigimage').attr('src', $(this).attr('src')); 
}); 
+0

你应该去jQuery的所有方式:$( '#bigimage')ATTR ('src',$(this).attr('src')); – 2010-09-07 07:00:23

+0

我意识到后立即纠正它。 – Nirmal 2010-09-07 07:02:48

+0

谢谢,这是它,当我被允许时,我会接受你的答案。我希望我可以选择你两次,答案很快!只有一个问题... $(this).attr('src')是一个锚点,它没有src。为了解决这个问题,我使用了$(this).find('img')。attr('src'); – 2010-09-07 07:07:11

0

document.getElementById('bigimage')不是一个jQuery对象,所以你不能使用jquery函数attr对它。你可以这样说:

$(document.getElementById('bigimage')).attr('src', $(this).attr('src')); 

,但你也可以使用jQuery选择器引擎获得#bigimage:

$('#bigimage').attr('src', $(this).attr('src')); 
+0

我只是自己想出来的。我正在使用没有src的锚。为了解决这个问题,我使用了$(this).find('img')。attr('src'); – 2010-09-07 07:03:11