2013-01-24 1 views
1

Привет Я пытаюсь загрузить изображение в скрытый div. Мне нужно делать это много раз, и я не хочу загружать изображение из кеша. Вот код.загрузить такое же изображение без кеша в скрытое div

document.getElementById('container').innerHTML = '<img src="http://blog.dwolla.com/wp-content/uploads/2012/09/stackoverflow.png" onload="onLoad()" />' 

function onLoad() { 
    alert() 
} 

Есть ли способ сделать это без кеша? Спасибо ...

+0

Не можете ли вы попросить серверную сторону отправить заголовок без кеша? –

+0

как насчет добавления метки времени для изображения? –

+0

Я не могу спросить серверную колонку для заголовка :( – user1874941

ответ

1

Append некоторый случайный параметр для изображения src так не будет использоваться кэш:

var img = '<img src="http://blog.dwolla.com/wp-content/uploads/2012/09/stackoverflow.png?' + Math.random() + '" onload="onLoad()" />'; 
document.getElementById('container').innerHTML = img; 
+0

случайный может быть дублирован время от времени, но timestamp never –

+0

Возможно, это кажется очень маловероятным, что он дублируется (0.011268550995737314), если вы не делаете попыток, как десять миллиардов. правы, лучше использовать временную метку: «» '; – dfsq

+0

На самом деле я пытаюсь измерить скорость загрузки с помощью этого метода. Ранее для того же изображения у меня было 22 Мбит/с, что является моей реальной скоростью, а позже это была загрузка из кеша теперь он не загружается из кеша, но он каждый раз показывает 0,58 мбит/с, есть ли у вас какие-либо идеи, почему это произошло? – user1874941

3
var img = '<img src="http://blog.dwolla.com/wp-content/uploads/2012/09/stackoverflow.png?' + Number(new Date()) + '" onload="onLoad()" />'; 
document.getElementById('container').innerHTML = img; 
1

Добавить случайную строку на конец IMG URL

например:

document.getElementById('container').innerHTML = '<img src="http://blog.dwolla.com/wp-content/uploads/2012/09/stackoverflow.png?nocache='+Math.random()+'" onload="onLoad()" />' 
Смежные вопросы