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

HTML+CSS+JavaScript

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

 

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

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

тема: input'ы не появляются при style.visibility='visible';
 
 автор: Wyfinger   (19.04.2007 в 23:21)   письмо автору
 
 

Добрый день.

Столкнулся с такой проблемой.
Есть div (или span), в котором лежат элементы формы - поля ввода строк, есть функция:

<script language=javascript>var sv=false;
function fcode(){if(sv==false) {
document.all.fr.style.visibility='visible';
document.all.fr.style.position='relative';
sv = true;}
else {
document.all.fr.style.visibility='hidden';
document.all.fr.style.position='absolute';
sv = false;}}
</script>


fr - этот самый span:


<span id=fr style='visibility:hidden'>
<input id=is1 class=ebx name=min_size type=text size=10 value=''>&nbsp;...&nbsp;
<input class=ebx name=max_size type=text size=10 value=''>&nbsp;(КБайт).&nbsp;&nbsp;
</span>


Проблема в том, что в IE 7 когда я первый раз выполняю функцию fcode() - элементы появляются, потом еще раз выполняю - исчезают, а когда в третий раз - сам элемент <span></span> появляется, а input'ы нет.

На браузерах Opera и FireFox все работает нормально.

Как исправить эту ошибку для IE?

   
 
 автор: Lelik   (19.04.2007 в 23:36)   письмо автору
 
   для: Wyfinger   (19.04.2007 в 23:21)
 

странно, что твой код работает в ФФ :?

несколько заменен и... используй

<script language=javascript>var sv=false;
function fcode(){if(sv==false) {
document.getElementById('fr').style.display='inline';
sv = true;}
else {
document.getElementById('fr').style.display='none';
sv = false;}}
</script> 


ЗЫ. также не забывай при присваивании значений атрибутам тегов ставить кавычки

<span id='fr' style='visibility:hidden'></span> 

   
 
 автор: Wyfinger   (20.04.2007 в 00:32)   письмо автору
 
   для: Lelik   (19.04.2007 в 23:36)
 

FireFox у меня третий - Minefield.

Поставил кавычки везде где можно, и писал display='inline' - не помогло, В Опере все работало, в IE - нет (в FireFox не проверял).

Уже пробовал вместо того, чтобы делать невидимым, утащить за пределы экрана, но не помогает, опять в Опере работает, в IE и FireFox - нет.

Возможно это ошибки в разметке страницы, где-то незакрытые теги, браузеры отображают страницу нормально, а Dreamwaver - ругается, возможно интерпретатор скриптов в IE чувствителен к этому?

   
 
 автор: Wyfinger   (20.04.2007 в 07:25)   письмо автору
 
   для: Wyfinger   (19.04.2007 в 23:21)
 

Проблему решил.

Вся проблема, похоже, заключалась в незакрытом теге form, после его закрытия все стало нормально работать.

Не наступайте на мои грабли!

   
Rambler's Top100
вверх

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