Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Открытие окна


Автор: vio 2.8.2005, 10:03
Нужно, что бы в зависимости от текущей даты ссылка срабатывала по разному.
Т.е. если сегодня 02.07, то дoлжен открыться документ 02.07.html, если сегодня 03.07, то откроется 03.07.html и т.д.

Автор: trix 3.8.2005, 15:20
Код

<html>
<script language="JavaScript" type="text/javascript">
function OpenDocumentByDate()
{
    var s = new String();
    var DateObj = new Date();

    if(DateObj.getDate()<10) s='0'+DateObj.getDate();
    else s=DateObj.getDate();
    
    s+='.';
    
    if(DateObj.getMonth()<10) s+='0'+DateObj.getMonth();
    else s+=DateObj.getMonth();
    
    s+='.html';
    window.open(s);
}
</script>
<body>
<input value="клацай" type=button onclick="OpenDocumentByDate()">
</body>
</html>

Добавлено @ 15:23
если нужна именно ссылка, то вместо кнопки вставь такую строку:
Код

<a href="javascript:OpenDocumentByDate()">click</a>

Автор: vio 4.8.2005, 08:56
Что-то торможу сегодня. А как мне сделать, что бы скрипт в отдельном документе был?

У меня почему-то месяц неправильно находит, говорит, что сейчас 7 месяц идет. Я вот исправила, может что не так?
Код

    if(DateObj.getMonth()<10) s+='0'+(DateObj.getMonth()+1);
    else s+=DateObj.getMonth();

Автор: trix 4.8.2005, 09:37
Да, я про это совсем забыл. Он считает месяца с нуля.
Исправила правильно, но не до конца.
Код

    if(DateObj.getMonth()<10) s+='0'+(DateObj.getMonth()+1);
    else s+=(DateObj.getMonth()+1);

Автор: trix 4.8.2005, 10:04
если нада, чтоб открывалась ссылка не в новом окне, а в этом же, то вместо
Код

    window.open(s);

пишеш
Код

    location.href=s;

еще один вариант с ссылкой
Код

<html>
<script language="JavaScript" type="text/javascript">
function OpenDocumentByDate()
{
    var s = new String();
    var DateObj = new Date();

    if(DateObj.getDate()<10) s='0'+DateObj.getDate();
    else s=DateObj.getDate();
    
    s+='.';
    
    if(DateObj.getMonth()<10) s+='0'+(DateObj.getMonth()+1);
    else s+=(DateObj.getMonth()+1);
    
    s+='.html';

    document.write('<a href="'+s+'">'+s+'</a>');
}
OpenDocumentByDate();
</script>
<body>
</body>
</html>

Автор: vio 4.8.2005, 10:14
Так как сделать скрипт в отдельном документ?

Автор: DEER 4.8.2005, 10:56
вынеси то что между тегами
Код

<script></SCRIPT> 

В отдельный файл, например '1.js'
Код

function OpenDocumentByDate()    
{    
    var s = new String();    
    var DateObj = new Date();    
    if(DateObj.getDate()<10) s='0'+DateObj.getDate();    
    else s=DateObj.getDate();    
     
    s+='.';    
     
    if(DateObj.getMonth()<10) s+='0'+(DateObj.getMonth()+1);    
    else s+=(DateObj.getMonth()+1);    
     
    s+='.html';    
    document.write('<a href="'+s+'">'+s+'</a>');    
}
OpenDocumentByDate();    

А теперь в исходном html файле напиши
Код

<html>    
<script language="JavaScript" type="text/javascript" SRC="1.js">    
</script>    
<body>    
</body>    
</html>

Автор: vio 9.8.2005, 08:42
trix, DEERспасибо за помощь!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)