試圖讓我的翻轉在翻轉時更改src。這工作正常,但有一個錯誤。點擊縮略圖後,src有時可能包含錯誤的src(即使在鼠標懸停狀態下仍然保持翻轉狀態)。 。要找到這個錯誤,點擊幾個縮略圖並點擊幾下鼠標,你會看到翻轉src保留已經被點擊過的src。演示不再可用,對不起!jquery翻轉混亂
jQuery的 -
function image_gallery(){
if ($('ul.thumbs').length > 0) {
$('.gallery').each(function(){
$('ul.thumbs li img:gt(0)').addClass('unselected');
$('ul.thumbs li img:eq(0)').addClass('selected');
function mouse_overs() {
var unselected = $('li img.unselected');
unselected.hover(function(){
var thumb = $(this);
thumb.attr('src',thumb.attr('src')
.replace(/([^.]*\d)\.(.*)/, "$1r.$2"));
}, function(){
var thumb = $(this);
thumb.each(function(){
$(this).attr('src',$(this)
.attr('src').replace('r.jpg','.jpg'));
});
});
};
mouse_overs();
var img_main = $(this).find('img.main:first');
$(this).find('ul.thumbs img').each(function(){
$(this).click(function(){
var thumb = $(this);
var src = thumb.attr('src');
if (src.indexOf('r.jpg') == -1) {
$(this).attr('src',thumb.attr('src')
.replace(/([^.]*)\.(.*)/, "$1r.$2"));
}
var selected = $('ul.thumbs li img.selected');
// previous img remove r.jpg
selected.attr('src',selected.attr('src')
.replace('r.jpg','.jpg'));
selected.removeClass('selected');
selected.addClass('unselected');
//current thumb add class "selected", remove "unselected"
thumb.addClass('selected');
thumb.removeClass('unselected');
mouse_overs();
var rel = $(this).parent('a').attr('rel');
img_main.fadeOut(500, function(){
img_main.attr('src', rel);
img_main.fadeIn('slow');
});
thumb.mouseout(function(){
var src = $(this).attr('src');
if (src.indexOf('r.jpg') == -1) {
$(this).attr('src',thumb.attr('src')
.replace(/([^.]*)\.(.*)/, "$1r.$2"));
}
else return false;
});
});
});
});
}
}
的HTML:
<div class="gallery">
<img class="main" src="images/gallery/yes-campaign/NL1.jpg"/>
<ul class="thumbs">
<li><a rel="images/gallery/yes-campaign/NL1.jpg"><img src="images/thumbs/yes-campaign/NL-1r.jpg"/></a></li>
<li><a rel="images/gallery/yes-campaign/NL2.jpg"><img src="images/thumbs/yes-campaign/NL-2.jpg"/></a></li>
<li><a rel="images/gallery/yes-campaign/NL3.jpg"><img src="images/thumbs/yes-campaign/NL-3.jpg"/></a></li>
<li><a rel="images/gallery/yes-campaign/NL4.jpg"><img src="images/thumbs/yes-campaign/NL-4.jpg"/></a></li>
</ul>
</div>
這個HTML在整個頁面重複不同的時間。翻轉狀態爲NL1r.jpg,NL2r.jpg等。圖像按文件夾排列,所有圖像文件名使用相同的命名約定。
真棒,非常感謝,從中學到了很多東西。 – 2009-11-03 23:43:31
演示現在使用上面的代碼 – 2009-11-04 01:09:38
目前,您的圖像上有浮動左側的CSS位置,請確保向周圍的LI元素添加「overflow:hidden」。 – 2009-11-04 12:48:48