Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: опять про обозреватели
 
 автор: Stasycat   (18.12.2008 в 10:11)   письмо автору
 
 

Какой код прописать, чтобы скрипт выполнялся только если обозреватель не IE. Во всех других идёт, а в ИЕ просто выкидывает ошибку и не открывает страницу вообще.
Вот код:

<SCRIPT LANGUAGE="javascript">
var timeStr, dateStr, ostStr, x;  

function clock() {  
        now= new Date();  
        ex = new Date(2009,0,1,0,0,0);  

        // время 
        hours= now.getHours();  
        minutes= now.getMinutes();  
        seconds= now.getSeconds();  
        timeStr= "" + hours;  
        timeStr+= ((minutes < 10) ? ":0" : ":") + minutes;  
        timeStr+= ((seconds < 10) ? ":0" : ":") + seconds;  
          
        // дата   
        date= now.getDate();  
        month= now.getMonth()+1;  
        year= now.getYear();  
        dateStr= "" + date;  
        dateStr+= ((month < 10) ? "/0" : "/") + month;  
        dateStr+= "/" + year;  
      
        ostStr= "";  
                razn = ex.getTime() - now.getTime(); 
        x = razn/1000;  
        ostStr = Math.floor(x/60/60/24) + ' дн. '; 
        ostStr = ostStr + Math.floor(x/60/60 - Math.floor(x/60/60/24)*24) + ' ч. ';  
        ostStr = ostStr + Math.floor((x/60/60 - Math.floor(x/60/60))*60) + ' мин. ';  
        x = (((x/60/60 - Math.floor(x/60/60))*60) - Math.floor((x/60/60 - Math.floor(x/60/60))*60))*60;  
        ostStr = ostStr + Math.floor(x) + ' сек. ';  
          
        if (razn>0) timeleft.innerHTML ='До нового года осталось: ' + ostStr + ' <br>Поздравляем Вас с Новым Годом! <br>Счастья, здоровья и благополучия в Новом Году! ';          

        Timer= setTimeout("clock()",1000);  
}  
</SCRIPT>
</head>
<body>
<div id=timeleft>
<SCRIPT language="javascript">clock();</SCRIPT>
</div>
...

Обратный отсчёт времени до НГ.

Где и что изменить?

  Ответить  
 
 автор: elenaki   (18.12.2008 в 10:24)   письмо автору
 
   для: Stasycat   (18.12.2008 в 10:11)
 

у меня никакой ошибки, отсчет идет. какую ошибку вам выдает? какая версия IE?

  Ответить  
 
 автор: Stasycat   (18.12.2008 в 10:33)   письмо автору
 
   для: elenaki   (18.12.2008 в 10:24)
 

Дома IE 7, на работе 6. Не работает нигде. Открывает полстраницы, выкидывает ошибку и отсылает на "невозможно загрузить страницу".
В скрипте у меня 2 пункта: отсчёт до НГ + снежинки. Если убрать 1 пункт, то снежинки падают и страница открывается ВО ВСЕХ обозревателях. Отсюда делаю вывод - проблема в отсчёте времени. По крайней мере, для IE...

  Ответить  
 
 автор: elenaki   (18.12.2008 в 10:38)   письмо автору
 
   для: Stasycat   (18.12.2008 в 10:33)
 

в программе IETESTER и в 6-м и в 7-м и в 8-м бета2 скрипт работает

  Ответить  
 
 автор: Stasycat   (18.12.2008 в 10:43)   письмо автору
9.7 Кб
 
   для: elenaki   (18.12.2008 в 10:38)
 

http://www.monyc.ru/
Сейчас там 2 скрипта, зайди, посмотри. Ошибка :-(
Вот прикрепляю весь код страницы

  Ответить  
 
 автор: elenaki   (18.12.2008 в 10:55)   письмо автору
 
   для: Stasycat   (18.12.2008 в 10:43)
 

в браузере (IE8 настроен под IE7) работают часы, снега нет. в IETestere: в IE6 не открывается,
в IE7 не открывается, в IE8 открывается с ошибкой:

HTML Parsing Error: Unable to modify the parent container element befor the child element is closed (KB927917)

после закрытия сообщения об ошибке, в IETestere часы идут, снега нет.

в FF3 открывается, ошибок нет, снег на месте, часов нет вообще

  Ответить  
 
 автор: Stasycat   (18.12.2008 в 11:02)   письмо автору
 
   для: elenaki   (18.12.2008 в 10:55)
 

А что же делать? Что не так в коде? Можно ли как-то прописать, что данный код должен выполняться только для обозревателей отличных от IE
Или проще убрать часы и фиг с ними? Что посоветуете?

  Ответить  
 
 автор: sl1p   (18.12.2008 в 11:07)   письмо автору
 
   для: Stasycat   (18.12.2008 в 11:02)
 

выкинуть нафиг снег) оно глупо смотрится имхо)

  Ответить  
 
 автор: Stasycat   (18.12.2008 в 11:24)   письмо автору
 
   для: elenaki   (18.12.2008 в 10:55)
 

Спасибо за "разбор по полочкам", теперь всё работает. Просто код надо было вставлять не в id дива, а в id какого-либо элемента. Добавила ячейку таблицы с id="111" и в неё всё стало прописываться.
Всех с Наступающим!

  Ответить  
 
 автор: promoivan   (14.10.2010 в 16:45)   письмо автору
 
   для: elenaki   (18.12.2008 в 10:55)
 

Если Вы еще не нашли решение проблемы ошибки KB927917 (http://pcblog.spb.ru/web/html-parsing-error-unable-to-modify-the-parent-container-element-before-the-child-element-is-closed-kb927917/)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования