Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помощь с кодом (https://javascript.ru/forum/misc/48223-pomoshh-s-kodom.html)

kirujam 25.06.2014 12:00

Помощь с кодом
 
В общем есть код:
var show;
function hidetxt(type){
    param=document.getElementById(type);
    if(param.style.display == "none") {
        if(show) show.style.display = "none";
        param.style.display = "block";
        show = param;
    }else param.style.display = "none";
}

Нужно добавить туда закрытие элементов у которых стоит стиль block..

jule 25.06.2014 12:53

kirujam,нужно закрытие сразу всех элементов с display:block; или у указанного (type)?

kirujam 25.06.2014 13:07

jule, у всех

jule 25.06.2014 13:33

kirujam,у всех элементов, которые находятся внутри указанного id?

kirujam 25.06.2014 13:41

jule, у элементов с другим id но с display:block

jule 25.06.2014 19:39

Вот так как-то:
function hidetxt(){
	var tags = document.body.getElementsByTagName("*"),getStyle;
	for(var i = 0; i < tags.length; i++){
		if (window.getComputedStyle)
			getStyle = getComputedStyle(tags[i]);
		else getStyle = tags[i].currentStyle;
		if(tags[i].id){
			if(getStyle.display == "block")
				tags[i].style.display = "none";
	
			else tags[i].style.display = "block";
		}
	}
}

kirujam 26.06.2014 09:24

jule, ммм.. нет, что то не то вышло.. объясню поподробнее: есть 3 кнопки, которые открывают 3 дива. При открытии нового дива закрывается предыдущий. Мне надо что бы первый див открывался изначально, но если я прописываю block для него, то, по тому коду который у меня, он остается при открытии других.

рони 26.06.2014 09:57

Цитата:

Сообщение от kirujam
есть 3 кнопки, которые открывают 3 дива. При открытии нового дива закрывается предыдущий.

3 ссылка из множества тут http://javascript.ru/forum/jquery/48...tml#post317257

kirujam 26.06.2014 10:21

рони, спасибо!


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