У меня есть простой jQuery-чейнджер изображений, который при наведении на него заставит поменять местами все изображения с их серой версией, за исключением той, на которой вы находитесь, что одно останется цветным (они все цветные с самого начала), и когда вынаведите курсор мыши на другое изображение, последнее изображение будет изменено на серый, а новое изображение будет изменено на цветное.
Однако в IE при наведении курсора на изображения из-за его изменения src IE отобразит цветную версиюна долю секунды, прежде чем делать то, что он должен.
Вот код:
$(window).load(function() {
//when mouse over the list item...
$('#portfolio ul li').hover(function(){
$(this).find('img').addClass('active');
$(this).siblings().each(function(Idx){
var imgSrc = ""+$(this).find('img').attr('src');
var imgGS = ""+$(this).find('a').attr('rel');
$(this).find('img').attr('src', imgGS);
$(this).find('a').attr('rel', imgSrc);
//alert (imgSrc + " " + imgGS);
});
//when mouse leave...
}, function(){
$(this).find('img').removeClass('active');
$(this).siblings().each(function(Idx){
var imgGS = $(this).find('img').attr('src');
var imgSrc = $(this).find('a').attr('rel');
$(this).find('a').attr('rel',imgGS);
$(this).find('img').attr('src', imgSrc);
//alert (imgSrc + " " + imgGS);
});
});
//when mouse leaves the unordered list...
$('#portfolio ul').bind('mouseleave',function(){
$(this).siblings().each(function(Idx){
var imgSrc = $(this).find('img').attr('src');
var imgGS = $(this).find('a').attr('rel');
$(this).find('img').attr('src', imgSrc);
$(this).find('a').attr('rel',imgGS);
// alert (imgSrc + " " + imgGS);
});
});
});
Любая помощь будет оценена:)
Спасибо.