2013-12-16 2 views
2

У меня есть div под названием #highlights, который меняет названия статей и иллюстрации. Когда я меняю на новую иллюстрацию с помощью JQuery, как этотPre-render images

$("#highlights").css("background","url("+path+")"); 

фоновый рисунок быть установлен показывает медленно в первый раз. Как я могу это исправить?

+0

Вы можете получить изображения в кэш, загрузив их в объект изображения первым. –

+0

Вы изучали использование Sprites? –

+0

Prerendering - это нечто совершенно отличное от предварительной загрузки. Я сам ищу нехитрый способ прервать большие изображения *, которые я уже предварительно загрузил *, но это делает отставание браузера, когда я пытаюсь их отображать. OP, возможно, был после того, как предварительно загрузил изображения, но в названии говорится об обратном. Не обман –

ответ

7

Вы, вероятно, хотите preload the images (любезно James):

function preload(arrayOfImages) { 
    $(arrayOfImages).each(function(){ 
     $('<img/>')[0].src = this; 
     // Alternatively you could use: 
     // (new Image()).src = this; 
    }); 
} 

// Usage: 

preload([ 
    'img/imageName.jpg', 
    'img/anotherOne.jpg', 
    'img/blahblahblah.jpg' 
]); 
+7

-1 Если вы знали, что это обман, почему вы не отметили это? –

Смежные вопросы