Отключается скрипт

Тема в разделе "JavaScript", создана пользователем LOMANI, 11 фев 2013.

  1. LOMANI

    LOMANI

    Регистрация:
    18 янв 2013
    Сообщения:
    76
    Симпатии:
    5
    почему скрипт перестает работать?

    Код:
    <script type="text/javascript">
    function change(css)
    {document.write('<link href="/catalog/view/theme/default/stylesheet/stylesheet'+css+'.css" rel="stylesheet"');}
    var h=(new Date()).getHours();
    if (h > 21 || h <9) change('_noch');
    if (h >= 9 && h < 21) change('_den');
    </script>
    <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
    история такая:
    сижу и кручу шаблон для опен карт, да же не шаблон, css от шаблона ..... естественно благодаря этому скрипту ссылается шаблон на stylesheet_noch.css (_den) .... и в 1н прекрасный момент шаблон начинает ссылаться на stylesheet.css .... т.е. скрипт перестал работать и работает просто строка после скрипта

    как быть? есть какие предложения по изменению скрипта? или может есть альтернативные скрипты на уровне css, а не целикового шаблона?

    з.ы. спустя минут 15-20 скрипт опять работает, вывод что хостер глюкает. есть вариант льтернативы скрипта? ведь сам опен карт работает
     
  2. saxum2010

    saxum2010

    Регистрация:
    6 фев 2013
    Сообщения:
    111
    Симпатии:
    34
    Тоже самое делать на php стороне
     
  3. LOMANI

    LOMANI

    Регистрация:
    18 янв 2013
    Сообщения:
    76
    Симпатии:
    5
    ну а какая разница? если уж хостер отключает то он так и так работать не будет ...

    з.ы. отклбчает с 2100 до 2200
     
  4. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
    Почему вы решили, что дело в хостере? У вас есть три равноценных файла стилей, которые лежат в одной и той же директории: если б дело было в хостере, у вас бы и основной файл не грузился.

    Вся проблема в условии: вы забыли о 21 часе - он у вас не входит ни в один из периодов. Должно быть:
    Код:
    if (h >= 21 || h <9) change('_noch');
    Иначе получается, что для часа между 21-00 и 22-00 не должен подключаться ни один из двух стилей, подключаемых через скрипт.
     
    LOMANI нравится это.
  5. LOMANI

    LOMANI

    Регистрация:
    18 янв 2013
    Сообщения:
    76
    Симпатии:
    5
    хы... и правда, спасибо... как то забыл про это =))))
    з.ы. работает