Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Можно ли отключит кэширование JS-файлов?
 
 автор: madv   (18.12.2008 в 20:26)   письмо автору
 
 

У меня скрипт вызывается так:
<script type="text/javascript" src="..."></script>

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

  Ответить  
 
 автор: Николай2357   (19.12.2008 в 07:54)   письмо автору
 
   для: madv   (18.12.2008 в 20:26)
 

Попробуйте в src добавить рандомный дополнительный параметр.
Примерно так:
<script type="text/javascript" >
function Change()
{
var r=Math.round(99999999*Math.random())
document.getElementById('scr').src="test.js?r="+r
}
</script>

<script id="scr" type="text/javascript" src="test.js"></script>
</head>
<body onload="Change()">

  Ответить  
 
 автор: madv   (19.12.2008 в 11:08)   письмо автору
 
   для: Николай2357   (19.12.2008 в 07:54)
 

Не, результата никакого :(
Вообще, непонятно, src так не меняется, что ли....
Вот даже если указать в getElementById('scr').src="путь к совершенно другому скрипту"+r
где этот совершенно другой скрипт должен будет вывести алерт, например, для контроля.
то этот алерт не выводит, значит SRC не сменился.
А может сменился, ну а толку? скрипт все равно не подгружается похоже...

  Ответить  
 
 автор: elenaki   (19.12.2008 в 11:24)   письмо автору
 
   для: Николай2357   (19.12.2008 в 07:54)
 


<script type="text/javascript" > 

var r=Math.round(99999999*Math.random()) 

document.write("<SCRIPT LANGUAGE=JavaScript src='test.js?r="+r+"'><\/SCRIPT>")
</script>

  Ответить  
 
 автор: madv   (19.12.2008 в 11:37)   письмо автору
 
   для: elenaki   (19.12.2008 в 11:24)
 

О! спасибо, работает!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования