Приветствую Вас, Гость! Регистрация RSS

Ulink

Вторник, 14.05.2024
Главная » Файлы » Оформление » Информеры

Прогресс бар обратного отччёта времени до загрузки файла
15.01.2012, 13:27
Своеобразный таймер обратного отсчёта до загрузки файла. Если вы захотите скачать файл, прикреплённый к материалу, то при клике по ссылке "Скачать с сервера" появится полоса загрузки. После того, как полоса дойдёт до конца, будет дана возможность скачать файл.
Скрипт легко настраивается и так же легко устанавливается.

Установка:

Для начала войдите на страницу Материала и комментариев к нему и найдите участок кода:
Code
<?if($FILE_URL$)?><a href="$FILE_URL$"><!--<s5223>-->Скачать с сервера<!--</s>--></a> ($FILE_SIZE$)<?endif?>


Замените этот участок на:

Code
<?if($FILE_URL$)?>
<div id="pb_all">  
<a href="javascript://" onclick="progressBar();">  
Скачать с сервера ($FILE_SIZE$)  
</a>  
</div>

<script type="text/javascript">  
function progressBar(set) {  
  set = set || {};  
  document.getElementById('pb_all').innerHTML = '<div id="ot" style="width:' + (set.outW || 100) + 'px;height:' + (set.outH || 20) + 'px;' + (set.outB || 'border:1px solid #79a0c1') + ';"><div id="pb" style="background:' + (set.inB || '#ff0000') + ';width:0px;height:' + (set.outH || 20) + 'px;"></div></div>';  
  var bar = document.getElementById('pb');  
  x = setInterval(function () {  
  if (parseInt(bar.style.width) < (set.outW || 100)) {  
  bar.style.width = parseInt(bar.style.width) + (set.step || 1) + 'px';  
  } else {  
  clearInterval(x);  
  location.href = '$FILE_URL$';  
  }  
  },  
  1000 / (set.speed || 2))  
}  
</script><?endif?>


Разберём участки кода, которые отвечают за настройки:

Code
<script type="text/javascript">
function progressBar(set) {
set = set || {};
document.getElementById('pb_all').innerHTML = '<div id="ot" style="width:' + (set.outW || 100) + 'px;height:' + (set.outH || 20) + 'px;' + (set.outB || 'border:1px solid #79a0c1') + ';"><div id="pb" style="background:' + (set.inB || '#ff0000') + ';width:0px;height:' + (set.outH || 20) + 'px;"></div></div>';
var bar = document.getElementById('pb');
x = setInterval(function () {
if (parseInt(bar.style.width) < (set.outW || 100)) {
bar.style.width = parseInt(bar.style.width) + (set.step || 1) + 'px';
} else {
clearInterval(x);
location.href = '$FILE_URL$';
}
},
1000 / (set.speed || 2))
}
</script>

set.outW || 100 - Ширина рамки вокруг прогрессбара
set.outH || 20 - Высота рамки вокруг прогрессбара
border:1px solid #79a0c1 - Толщина и цвет обводки рамки
set.inB || '#ff0000' - Цвет прогрессбара
set.outH || 20 - Высота прогрессбара
set.outW || 100 - Ширина прогессбара
set.speed || 2 - Скорость загрузки (Чем больше число, тем быстрее скорость загрузки)
Категория: Информеры | Добавил: Mihail | Теги: отччёта, файла, прогресс, загрузки, времени, обратного
Просмотров: 1019 | Загрузок: 0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]