У меня есть список предметов.Каждый из них является квадратом с именем, и когда пользователь наводит курсор на квадрат, будет отображаться изображение, что делается с помощью jQuery.Код выглядит так:
$('.square').hover(function() {
var link = $(this).attr('title');
$(this).addClass('squarehover')
.css({backgroundImage: 'url(images/' + escape(link) + '.jpg)'});
}, function() {
$(this).removeClass('squarehover')
.attr('style', '');
});
.squarehover {
font-size: 0px;
background-repeat: no-repeat;
background-size: 100%;
-moz-background-size: 100%;
background-position: center center;
position: absolute;
z-index: 10;
cursor: pointer;
}
Если изображения не загружаются заранее, при зависании будет небольшая задержка.Кроме того, я не хочу показывать страницу после завершения загрузки всех изображений.
Поскольку изображения явно не отображаются на странице, возможно ли сначала загрузить страницу, а затем начать загружать изображения в кэш пользователя(моя идея заключается в том, что пользователь не будет сразу перемещать мышь на эти квадраты)?Как это сделать, если в HTML нет тега <img>
?
Кстати, так как background-size
не поддерживается в IE8, как с этим бороться?