imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 26.03.2004, 21:55     # 1
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
IE vs Netscape или как добиться совместимости.

Я смотрю, для многих пользовательей форума, тема весьма болезненая . К сожалению и меня как и многих других это не обошло стороной. А поэтому у меня вопрос такой, есть следующий код:

<tr onMouseOver="event.srcElement.className='menusel'"
onMouseOut="event.srcElement.сlassName='menu'">

я наивно полагая, что srcElement поддерживается как и ИЕ так и в Нетскепе, а не тут то было ИЕ и Опера кушают это на ура, а вот Нетскейп никак. Вот и хотелось бы узнать существует ли альтернативный способ или придеться для каждого элемента строки таблицы прописывать обработчики?

так же имеется:

var DayOfWeek = new Array("Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница ","Суббота");
var MonthName = new Array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август", "Сентябрь","Октябрь","Ноябрь","Декабрь");
var Current = new Date;

document.getElementById('Month').innerHTML=MonthName[Current.getMonth()];
document.getElementById('Day').innerHTML=Current.getDate();
document.getElementById('Year').innerHTML=Current.getYear();
document.getElementById('WeekDay').innerHTML=DayOfWeek[Current.getDay()];

опять же в ИЕ все идет на ура, а вот Опера с Нетскейпом кроме месяца ничего не отображают. Долго я бился с этой задачкой так вот и не понял в чем проблема. Может кто знает куда копать и где смотреть? Подскажите, плиз.



2 Moderators: Вам не кажеться, что стоить организовать отдельную тему если не раздел на форуме, посвященный данным вопросам?А то я заметил, что последние время народ начал с этим сталкиваться все чаще и чаще.
Izzyy вне форума  
Старый 26.03.2004, 22:50     # 2
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Цитата:
<tr onMouseOver="event.srcElement.className='menusel'">
this.className

Цитата:
var Current = new Date;
скобки поставь.

Цитата:
а вот Опера с Нетскейпом кроме месяца ничего не отображают
Все должно отображаться. Может только устаревший getYear() стОит заменить на getFullYear().

Цитата:
Вам не кажеться, что стоить организовать отдельную тему если не раздел на форуме, посвященный данным вопросам?
создай. я что мешаю
RaZEr вне форума  
Старый 26.03.2004, 23:06     # 3
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Ок.

1. this.className не подходит изначально т.к. после <tr> идет куча <td>, а event.srcElement.className им и менял имя класса я просто таким образом хотел сэкономить и не писать для каждой ячейки обработчик, в ИЕ это работате на ура.

2. Говоря скобки ты это имел ввиду: Current= new Date()?

3. Смотри то что должно отображаться я и сам понимаю, проблема в том, что не отображается. А если не отображается значить где-то ошиПся. Мне кажется, что надо явно преобразовать все в строки, а потом присваивать в innerHTML, так как месяц то отображается. Единственное, что пугает, что если месяц отображаеться то и день недели должен по идеи отображаться, а вот только не ничего подобного.... Т.е. проблема остается открытой.

4. А тему то я создам, не вопрос. А кто ее поместит в самый верх раздел, да еще и пометит "Важно"?
Izzyy вне форума  
Старый 26.03.2004, 23:18     # 4
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
1. event.target
2. да
3. JS автоматически все преобразовывать должен.
4. Когда там будет что-либо важное, тогда я помечу, а пока все на словах.
RaZEr вне форума  
Старый 26.03.2004, 23:28     # 5
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Цитата:
1. event.target
спасибо ща пойду проверять.
Цитата:
2. да
не думаю, что это принципиально, но попробую, тем более как я уже сказал название месяца отображаеться.
Цитата:
3. JS автоматически все преобразовывать должен.
смею заметить, что ничего подобного он не должен, если это делаеться производителями-разработчиками в одном месте вовсе не обязательно, что так будет и в другом. Иначе у меня не было бы сейчас таких проблем.
Цитата:
4. Когда там будет что-либо важное, тогда я помечу, а пока все на словах.
смотри тему я разместил, осталось надеятся, что народ ее поддержит, поживем увидим.
Izzyy вне форума  
Старый 26.03.2004, 23:33     # 6
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Цитата:
смею заметить, что ничего подобного он не должен
И почему же если не секрет?
RaZEr вне форума  
Старый 26.03.2004, 23:42     # 7
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Да потому, что не должен! Следить за корректностью и правильным форматом данных должен програмист, а не компилятор, то что майкрософт добавили эту возможность интерпритатора в ИЕ не о чем не говорит.
Посмотри тут статейку.
Izzyy вне форума  
Старый 27.03.2004, 00:00     # 8
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Цитата:
Да потому, что не должен! Следить за корректностью и правильным форматом данных должен програмист, а не компилятор, то что майкрософт добавили эту возможность интерпритатора в ИЕ не о чем не говорит.
Программист должен сделить за правильной работой своей программы, а кто будет следить за типами данных, утечками памяти и т.д. это риторический вопрос (Java, C#, PHP ...). Что же касается JS, то возьми например код:
Код:
var abc = "100";
var cde = 20;
var fgh = abc*cde;
alert(fgh);
Ну как же так? Разве можно умножать строку на число ? Но как видишь это работает, и в IE, и Mozilla и в Opera. В разработке последних двух MS участия не принимал.
RaZEr вне форума  
Старый 27.03.2004, 00:17     # 9
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Я не сказал, что это не работает. Я сказал, что это не всегда работает корректно и поэтому у меня ничего не отображаеться. Выходит, что ошибка в другом. В чем?
Izzyy вне форума  
Старый 27.03.2004, 00:19     # 10
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Пости код страницы. Сейчас я спать наверну завалюсь, а если до утра никто тебе не разъяснит ситуацию, - помогу.
RaZEr вне форума  
Старый 27.03.2004, 00:35     # 11
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Код:
<table cellspacing=0 cellpadding=0 border=1 align=right style="background-color:#e1e1e1;float:right;">

  	   <tr>
	      <td id="Month" class="date"></td>
		    <td id="Year" class="date"></td>
	     </tr>

	     <tr>
	      <td  background="dateback.gif" colspan=2 id="day" style="background-color:white;text-align:center;font-family:Impact;font-size:32pt;font-weight:bold"></td>
	     </tr>

	     <tr>
	      <td colspan=2 id="WeekDay" style="background-color:#64CDFF;padding:0.2em;text-align:center;font-family:Arial;font-size:12pt"></td>
	     </tr>

	  </table>
Я думаю этого хватит?
Izzyy вне форума  
Старый 27.03.2004, 01:42     # 12
joker99
Full Member
 
Аватар для joker99
 
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924

joker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форумеjoker99 Популярный человек на этом форуме
Netscape, Opera у меня сейчас нет, но я пмню что как то в Netscape он более серъёзно отнисится к кейсу букв в javasctipte, может дело в этом?

Я имяю ввиду поменяй id="day" на id="Day".
__________________
Столько дел, что и работой занятся некогда...
joker99 вне форума  
Старый 27.03.2004, 02:06     # 13
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
А с остальным, что? В данном случае еще можно подумать, а вот с годом и днем недели как?
JavaScript он вообще регистрочуствителен, толко не в этом случае.
Нее... не в этом ошибка. Я если честно уже не знаю, что и думать, столько вариантов перебрал и пока не один не помогает. Я в принципе сюда и обратился, только после двух дневного головоломания над проблемой.
Izzyy вне форума  
Старый 27.03.2004, 02:07     # 14
rontommy
Добряк Модератор
ГлавБюстАтценка АН ИМХО.ВС
 
Аватар для rontommy
 
Регистрация: 14.10.2002
Адрес: Старый оценщик, НИИ ГлавБюстАтценка АН ИМХО.ВС
Пол: Male
Сообщения: 4 010

rontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербог
rontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербогrontommy Гипербог
Izzyy
Не совсем в тему, но рекомендую все стили вынести в файл, так и код легче и читабильней будет, да и менять потом стиль в одном месте намного легче.
__________________
Лень - это когда видишь необходимость что-то делать, но не хочется, а влом - это когда что-то хочется, но не видишь необходимости это делать.
rontommy вне форума  
Старый 27.03.2004, 02:24     # 15
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
rontommy
Не совсем в тему? Ты уж не обижайся, но это совсем не в тему. Для этого и придумали приват.

ЛюДиииииии ну не ужели нет решения для этой проблемы ведь в ИЕ все работает как часы.
Izzyy вне форума  
Старый 27.03.2004, 10:53     # 16
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Цитата:
ЛюДиииииии ну не ужели нет решения для этой проблемы ведь в ИЕ все работает как часы.
joker99 дело говорит. У тебя там регистр разный - "day" и "Day". А JS регистрозависимый язык (про MS JScript я просто молчу).
RaZEr вне форума  
Старый 27.03.2004, 17:28     # 17
Izzyy
Junior Member
 
Аватар для Izzyy
 
Регистрация: 20.06.2003
Адрес: Israel
Сообщения: 106

Izzyy Путь к славе только начался
Да нет дело не в ригистре было, а в скобках, вчера поздно было и башка раскалывалась, так вот и оставил все на сегодня, а с утра проверил и заработало. Date() А Javascript он чуствителен только к регистру переменных, функций и т.д., но не в этом случае.
ТО RaZer: Спасибо за помощь
Izzyy вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 03:34.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.