Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите почему глючит getElementById (https://javascript.ru/forum/misc/2447-pomogite-pochemu-glyuchit-getelementbyid.html)

D_Serg 27.12.2008 03:51

Помогите почему глючит getElementById
 
Вопрос такой почему глючит(неработает функция) зада такая, показываем один раздел скрываем друго, первая переменная то что показываем вторая то что скрываем. почему то когда пытаюсь получить стиль во вторую переменную функция тупит!
function toggleMenu(currMenu,diMenu)	{
				//alert(currMenu+" , "+diMenu);
				var hisMenu;
				var thisMenu;
				hisDMenu = document.getElementById(diMenu).style;
				thisMenu = document.getElementById(currMenu).style;
					/*if(thisDMenu.display == "block")
						{
							thisDMenu.display = "none"
						}
					else
						{
							thisDMenu.display = "block"
						}	*/
				
					if(thisMenu.display == "block")
						{
							thisMenu.display = "none"
						}
					else
						{
							thisMenu.display = "block"
						}
				return false
		}

если убрать енту строчку то все ок - hisDMenu = document.getElementById(diMenu).style;
почему так происходит?

x-yuri 27.12.2008 04:44

что такое все ок? первый раздел корректно скрывается/показывается? в diMenu корректное id элемента? какие элементы соответствуют этим id (названия тэгов)?

twolf 29.12.2008 12:19

изначально в thisDMenu.display нет никакого значения. Поэтому и тупит ваша функция, скорее всего работает только со второго вызова, и после того как в свойство display попадает значение block или none.
Либо в js пропишите значение, либо в CSS, и всё заработает. :)

ZoNT 29.12.2008 15:37

thisDMenu и hisDMenu - чувствуешь разницу???

и var hisMenu; зачем???


Часовой пояс GMT +3, время: 04:54.