Я уверен, что javascript - ваш лучший вариант. Единственный другой способ сделать это - перенаправлять на новый URL каждую секунду, что, на мой взгляд, излишне.
Вот полный исходный код примера отсчета:
<html>
<head>
<meta http-equiv="refresh" content="5;url=http://example.com" />
<title>Countdown Sample</title>
</head>
<body>
you will be redirected to example.com in <span id="seconds">5</span>.
<script>
var seconds = 5;
setInterval(
function(){
document.getElementById('seconds').innerHTML = --seconds;
}, 1000
);
</script>
</body>
</html>
Редактировать
Вот улучшенная версия с советом Альнитака:
Я изменил JavaScript для перенаправления пользователей и запретил обратный отсчет ниже 1 и добавил тег <noscript>
вокруг <meta>
для пользователей без JavaScript.
<html>
<head>
<noscript>
<meta http-equiv="refresh" content="5;url=http://example.com" />
</noscript>
<title>Countdown Sample</title>
</head>
<body>
you will be redirected to example.com in <span id="seconds">5</span>.
<script>
var seconds = 5;
setInterval(
function(){
if (seconds <= 1) {
window.location = 'http://example.com';
}
else {
document.getElementById('seconds').innerHTML = --seconds;
}
},
1000
);
</script>
</body>
</html>