Я пытаюсь добавить изображение src в изображение в div по щелчку эскиза. Проблема заключается в том, что изображение src не изменяется при щелчке другого элемента.
Код HTML:
<a class="thumbnail" href="#" >
<img src="img1">
<img src="img2">
<img src="img3">
</a>
<div class="imageforthumb">
<img class="imageforthumbs">
</div>
Использование Javascript:
$('.thumbnail').click(function () {
var images = $('.thumbnail img').attr('src');
$(".imageforthumbs").attr('src', images)
});
как только я щелкнул первое изображение img1, он установлен на img1 и не меняет img2, когда я нажимаю миниатюру. Пожалуйста, советую, что здесь может быть неправильно?
ваш js-код неверен. пытаться
$('.thumbnail').click(function (eve) {
$(".imageforthumbs").attr('src', $(eve.target).attr('src'));
});
С этой строкой:
var images = $('.thumbnail img').attr('src');
Вы всегда получаете первое изображение src
.
Измените свой код на:
$('.thumbnail img').click(function () {
var images = $(this).attr('src');
$(".imageforthumbs").attr('src', images)
});
Пример: http://jsfiddle.net/8hTrr/
Edit: Как указано, вам не нужно jQuery, чтобы получить attr
, вам просто нужно:
$('.thumbnail img').click(function () {
$(".imageforthumbs").attr('src', this.src)
});
Обновленный пример: http://jsfiddle.net/8hTrr/1/
$(this).attr('src')
над this.src
?
Делегируйте событие на каждое изображение в теге <a></a>
. Затем привяжите src щелкнутого <img/>
.
$('.thumbnail').on('click', 'img', function () {
$(".imageforthumbs")[0].src = this.src;
});