Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > пустое место после того как блок спрятан


Автор: MeIsGremlin 12.9.2007, 18:01
есть таблица.
В ней строки имеют id="actor" style="display:none" ниже данные соответствующей анкеты.
выше радиобатоны и на на onclick стоит функция делающая следующее :


Код


function hide(name)
   {
    document.all[name].style.display='none';
   }
    
function wind(menu)
    {
    if (menu=="actor")
    {
        document.getElementById('actor').style.display='block';
        hide('dancer');
        hide('athlete');
        hide('stunt');            
    }
    else 
    if (menu=="dancer")
        {
            document.getElementById('dancer').style.display='block';
            hide('actor');
                        ...
            hide('another');
            hide('stunt');            
        }else 
        и тд


если несколько раз попереключать по радиобаттонам то появляется пустое место размером с предыдщий блок, которое плюсуется к следующим переключениям. И новый появившийся блок съезжает все ниже и ниже.

В эксплорере все работает нормально. Мозилла рисует эти пустые места.

Есть ли решение?

Автор: dsCode 12.9.2007, 18:50
MeIsGremlin, попробуйте вместо .display='block' писать просто .display='' (пусто). В Мозиле, вероятно, из-за блочного позиционирования добавляется этот "пустой блок". И вместо document.all[name] лучше писать document.getElementById(...).

Автор: MeIsGremlin 12.9.2007, 18:56
Цитата(dsCode @ 12.9.2007,  18:50)
MeIsGremlin, попробуйте вместо .display='block' писать просто .display='' (пусто). В Мозиле, вероятно, из-за блочного позиционирования добавляется этот "пустой блок". И вместо document.all[name] лучше писать document.getElementById(...).

О спасибо. Заработало. Премного благодарен за решение

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)