Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№115-03-2006 18:59:35

Jekk-A
Участник
 
Группа: Members
Зарегистрирован: 15-03-2006
Сообщений: 3

Некорректная обработка тега <select>!!!!

Давно уже заметил, что когда захожу на некоторые сайты частенько некорректно отображается панель выбора тега <SELECT>! Если просмотреть исходный код, то просто не обнаруживается никакого выбора:

Выделить код

Код:

<SELECT id="client" name="client" style="background-color: #EDF3FA; font-size: 11px; color: #002952; ">
<OPTION VALUE="hotmail.ru">hotmail.ru</OPTION>
</SELECT>

А если просмотреть исходный код через explorer, то видно следующее:

Выделить код

Код:

<td><SELECT id="client" OnChange="JavaScript:ChangeAction();" name="client" style="background-color: #EDF3FA; font-size: 11px; color: #002952; ">
		<OPTION VALUE="none">-- выберите домен --</OPTION>
		<OPTION VALUE="1" >orc.ru</OPTION>
		<OPTION VALUE="newmail.ru" >newmail.ru</OPTION>
		<OPTION VALUE="hotmail.ru" selected>hotmail.ru</OPTION>
		<OPTION VALUE="nm.ru" >nm.ru</OPTION>
		<OPTION VALUE="nightmail.ru" >nightmail.ru</OPTION>
		</SELECT>

Причем, если сохранить исходный код от экплорера и открыть лисицой-все ОК! И тем не менее, мне кажется, что дело в свойстве тега <OPTION> "selected", так как на той же странице другой список выбора работает корректно а код его такой:

Выделить код

Код:

<SELECT name="GoTo" OnChange="JavaScript:window.location.href=document.move.GoTo.value;" style="background-color: #EDF3FA; font-size: 11px; color: #002952;">
                  <OPTION VALUE="http://www.orc.ru/index.dhtml">-- быстрый переход --</OPTION>
                  <OPTION VALUE="http://www.orc.ru/access/dialup.dhtml"> Коммутируемый доступ</OPTION>
                  <OPTION VALUE="http://www.orc.ru/voip/index.dhtml">Телефония</OPTION>
                  <OPTION VALUE="http://www.orc.ru/access/leased.dhtml">Постоянное подключение</OPTION>
                  <OPTION VALUE="http://www.orc.ru/online/newhost.dhtml">Виртуальный хостинг</OPTION>
                  <OPTION VALUE="http://www.orc.ru/online/domain.dhtml">Регистрация доменов</OPTION>
                  <OPTION VALUE="http://www.orc.ru/pay/dealers.dhtml">Операторы ОРЦ</OPTION>
                </SELECT>

Из чего я и сделал такие выводы!
Хочется узнать комментарии по данному багу и, возможно, средства его исправления!
Либо занесения его в список найденных и требующих исправления! (Потому как броузер весьма хороший, но многие от него отказываются по подобным причинам!)

ЗЫ: Кстати, вот сайт, на котором он был замечен: www.hotmail.ru
Кстати, версия, в которой данный баг присутствует самая наипоследнейшаяЖ 1.5.0.1:/

Отредактировано Jekk-A (15-03-2006 19:02:44)

Отсутствует

 

№215-03-2006 19:17:30

Yan
Участник
 
Группа: Extensions
Откуда: Москва
Зарегистрирован: 27-02-2005
Сообщений: 1019

Re: Некорректная обработка тега <select>!!!!

Firefox прекрасно работает с тегом select.
Это надо у админов hotmail'а спросить, зачем они всем не-IE браузерам выдают обрезанный контент.
Впрочем, спрашивать наверное бесполезно, ибо по моему опыту исправлять они ничего не будут даже если им пальцем ткнуть в ошибку и сказать как исправить..

Но к сожалению таких сайтов в интернете много, и работать с ними всё равно приходится. Часто помогает расширение User Agent Switcher.

Отсутствует

 

№315-03-2006 19:51:43

Jekk-A
Участник
 
Группа: Members
Зарегистрирован: 15-03-2006
Сообщений: 3

Re: Некорректная обработка тега <select>!!!!

Yan пишет

Firefox прекрасно работает с тегом select.
Это надо у админов hotmail'а спросить, зачем они всем не-IE браузерам выдают обрезанный контент.
Впрочем, спрашивать наверное бесполезно, ибо по моему опыту исправлять они ничего не будут даже если им пальцем ткнуть в ошибку и сказать как исправить..

Но к сожалению таких сайтов в интернете много, и работать с ними всё равно приходится. Часто помогает расширение User Agent Switcher.

Да! Действительно, с установкой данного расширения эта проблема решилась-Вы оказались правы! Но существует другая ситуация-это работа со всплывающим меню! К примеру, на сайте www.profclub.ru вверху, в шапке, находится небольшая навигационная менюшка. При наведении в ЭксплорЭре, на некоторые слова, появляется всплывающее меню! Но в лисице ЕГО НЕТ!!! Был бы очень признателен за объяснение данного ньюанса, ИМХО данная особенность точно связана с интерпретацией html кода!!!
Вот,кстати, он:

Выделить код

Код:

<A onmouseover="showNav('portals',186);" 
                  onclick="if (NIE) window.event.cancelBubble=true; return false;" 
                  href="">О компании</A>

И javascript код:

Выделить код

Код:

function showNav(name,X)
{
if (navFade) {
clearTimeout(navFade);
navFade=null
}
if(nameShown!=name)
{
X+=Math.round(((NNN)?window.innerWidth-16:((NIE)?document.body.clientWidth:0)))-800;
if (navShown) hideNav();
if (NNN) {
document.layers["kmnav"+name].top=37;
document.layers["kmnav"+name].left=X-15;
document.layers["kmnav"+name].visibility="show";
}else if (NIE){
document.all["kmnav"+name].style.top=37;
document.all["kmnav"+name].style.left=X-15;
document.all["kmnav"+name].style.visibility="visible";
}
nameShown = name;
}
if(NNN)
navFade=setTimeout("hideNav();",10000);
navShown=true;
return true;
}

Отсутствует

 

№415-03-2006 20:10:51

Yan
Участник
 
Группа: Extensions
Откуда: Москва
Зарегистрирован: 27-02-2005
Сообщений: 1019

Re: Некорректная обработка тега <select>!!!!

Если смотреть на код, то сразу бросается в глаза использование недокументированных свойств document.layers и document.all. Надо обращаться к разработчкикам сайта, чтобы переписали код в соответствии с общепринятыми стандартами.

Отсутствует

 

№515-03-2006 20:43:09

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Некорректная обработка тега <select>!!!!

Меню написано еще в прошлом веке, ну максимум - до 2001 года. В JavaScript-консоли написано, что document.all - эксклюзивное и нестандартное свойство.
Вместо него нужно использовать document.getElementById() - кстати, эта функция работает и в IE >=5.0. Или так:

Выделить код

Код:

function gElId(eId)
{return ((document.getElementById)?document.getElementById(eId):((document.all)?document.all[eId]:null));}

Отсутствует

 

№616-03-2006 00:00:27

Unghost
Призрак-админ
 
Группа: Administrators
Откуда: Moscow, Russia
Зарегистрирован: 08-10-2004
Сообщений: 11771

Re: Некорректная обработка тега <select>!!!!

==> Проблемы с сайтами


Do not meddle in the affairs of Wizards, for they are subtle and quick to anger.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]