|
|
|
|
|
для: RMW
(03.09.2006 в 12:39)
| | Всё, спасибо огромное, теперь всё работает. :) | |
|
|
|
|
|
|
|
для: RadjaxteN
(03.09.2006 в 12:32)
| | Да оставь первый не суть важно,
а вообще поменяй id
Например в функции
var embd = document.getElementById('pl'); | |
|
|
|
|
|
|
|
для: RadjaxteN
(02.09.2006 в 19:00)
| | Вот это - скрипт для перезагрузки страницы после завершения всего кода:
<script>
function f()
{
var pl = document.getElementById('pl');
if(pl && pl.readyState=='complete' && pl.PlayState=='0')
{
window.location.reload();
return;
}
timer = setTimeout('f()',1200);
}
</script>
|
Но вот эта функция не выполняет тогоже назначения:
<script>
var c,tm;
function AutoReload()
{
var embd = document.getElementById('_embd');
if(embd && embd.readyState==('complete' || 4))
{
if(embd.PlayState==2)c=true;
if(embd.PlayState==0)
{
if(c)window.location.reload();
return;
}
}
tm = setTimeout('AutoReload()',1000);
}
window.onload = AutoReload;
function fs()
{
clearTimeout(tm);
}
</script>
|
Как сделать, чтобы второй скрипт перезагружал страницу после :
<embed src="song.mp3" autoplay="true" id="pl" width=314 height=45>
</embed>
|
| |
|
|
|
|
|
|
|
для: RMW
(02.09.2006 в 18:49)
| | А есть какая-нибудь альтернатива для воспроизведения музыкальных файлов во всех браузерах? | |
|
|
|
|
|
|
|
для: RadjaxteN
(02.09.2006 в 17:48)
| | Ну, не знаю, моему всех объектов хватает.
Наверное это из-за того, что предполагается, что id эмбеда
будет "_embd".
Впрочем лишняя проверка никогда не повредит :)
и можно строчку переделать к прежнему виду:
if(embd && embd.readyState==('complete' || 4))
|
В этом случае скрипт хоть и не отработает, но и ошибку не вызовет.
И ещё надеюсь ты знаешь, что embed это не есть кросс-браузерное
решение, в опере например работать уже не будет.
А onclick="fs()" нужно ставить в каждой ссылке, ничего другого
пока предложить не могу.
Но наверное можно и как-то иначе сделать. | |
|
|
|
|
|
|
|
для: RadjaxteN
(02.09.2006 в 17:37)
| | И ещё, в этой строке не хватает какого-то обьекта, говорит браузер:
if(embd.readyState==('complete' || 4))
|
| |
|
|
|
|
|
|
|
для: RMW
(02.09.2006 в 17:02)
| | Если я правильно понял, то [onclick="fs()"] надо прописывать в каждой сылке? | |
|
|
|
|
|
|
|
для: RadjaxteN
(02.09.2006 в 16:16)
| | Да, видать таймер надо сбрасывать и наверное привязывать
это дело придётся к каждой конкретной ссылке.
Вот, кстати, последняя версия скрипта, здесь
сброс таймера происходит в функции fs(),
и к тому же если музыкальный файл по какой-то причине не
сможет быть воспроизведён обновление происходить не будет.
<html>
<head>
<script>
var c,tm;
function AutoReload()
{
var embd = document.getElementById('_embd');
if(embd.readyState==('complete' || 4))
{
if(embd.PlayState==2)c=true;
if(embd.PlayState==0)
{
if(c)window.location.reload();
return;
}
}
tm = setTimeout('AutoReload()',1000);
}
window.onload = AutoReload;
function fs()
{
clearTimeout(tm);
}
</script>
</head>
<body>
<embed src="0078.mid" autoplay="true" hidden="true" id="_embd">
<a href="http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=23846" onclick="fs()">Перейти по ссылке</a>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: Евгений Петров
(02.09.2006 в 16:04)
| | Нет... Всё так же.... | |
|
|
|
|
|
|
|
для: RadjaxteN
(02.09.2006 в 15:48)
| | А если сбрасывать прям перед тайемром?
...
if(timer != null) clearTimeout(timer);
timer = setTimeout('f()',1200);
|
| |
|
|
|
|