Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.02.2011, 15:14
Аспирант
Отправить личное сообщение для pernik Посмотреть профиль Найти все сообщения от pernik
 
Регистрация: 13.02.2011
Сообщений: 44

помогите разобраться в коде
прокоментируйте пожалуйста строки а то никак не заберусь
var getdd = document.getElementById('slide').getElementsByTagName("DD");
var getdt = document.getElementById('slide').getElementsByTagName("DT");
var getMenu = document.getElementById('odnaknopka').getElementsByTagName("DT");
	for (var x=0; x<getMenu.length; x++) {
		getMenu[x].onclick=function() {
			if (this.id == "menu1"  && document.getElementById('smenu').className=='') {
			expand (0,document.getElementById('slide').offsetHeight,'smenu')
			document.getElementById('smenu').className = "clicked";
			this.className="expand";
			                                                                            }
			else {
			for (var q=0; q<getdd.length; q++) {
			eNext = getdd[q].firstChild;
			while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
			ulHeight = eNext.offsetHeight;
			if (getdd[q].offsetHeight > 0) {
			getdd[q].className='';
			getdt[q+1].className='';
			contract (ulHeight,0,getdd[q].id)
				}
			}
			document.getElementById('slide').style.position = "absolute";
			document.getElementById('smenu').style.overflow = "visible";
			contract (document.getElementById('slide').offsetHeight,0,'smenu')
			document.getElementById('smenu').className = '';
			this.className='';
		}
	}
}

	
	for (var i=0; i<getdt.length; i++) {
		getdt[i].onclick=function() {
	document.getElementById('slide').style.position = "relative";
	document.getElementById('smenu').style.overflow = "visible";
	if (this.id.indexOf('item') != -1) {
	for (var z=0; z<getdd.length; z++) {
		if (getdd[z].id.indexOf(this.id) !=-1 && getdd[z].className=='') {
		eNext = getdd[z].firstChild;
		while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
		ulHeight = eNext.offsetHeight;
		expand (30,ulHeight,getdd[z].id)
		}
		else {
		eNext = getdd[z].firstChild;
		while (eNext.nodeType!=1) {eNext = eNext.nextSibling;}
		ulHeight = eNext.offsetHeight;
		if (getdd[z].offsetHeight > 0) {
		contract (ulHeight,0,getdd[z].id)
		}
		}
		if (getdd[z].id.indexOf(this.id) !=-1 && getdd[z].className=='') {
			getdd[z].className='selected'; 
			this.className='slide';
			}
		else {
			getdd[z].className='';
			ePrevious = getdd[z].previousSibling;
			while (ePrevious.nodeType!=1) {ePrevious = ePrevious.previousSibling;}
			ePrevious .className='';
			}
		}
	}
	}
}
function expand (cY, fY, subY) {
cY=cY+2;
if (cY <= fY) {
document.getElementById(subY).style.height = cY + "px";
setTimeout ("expand("+cY+","+fY+",'"+subY+"')", 10);
}
}

function contract (cZ, fZ, subZ) {
cZ=cZ-2;
if (cZ >= fZ) {
document.getElementById(subZ).style.height = cZ + "px";
setTimeout ("contract("+cZ+","+fZ+",'"+subZ+"')", 10);
}
}

Последний раз редактировалось monolithed, 13.02.2011 в 19:30.
Ответить с цитированием
  #2 (permalink)  
Старый 13.02.2011, 16:11
Аватар для NoResponse
Профессор
Отправить личное сообщение для NoResponse Посмотреть профиль Найти все сообщения от NoResponse
 
Регистрация: 17.06.2010
Сообщений: 152

что именно непонятно ?
Ответить с цитированием
  #3 (permalink)  
Старый 13.02.2011, 16:24
Аспирант
Отправить личное сообщение для pernik Посмотреть профиль Найти все сообщения от pernik
 
Регистрация: 13.02.2011
Сообщений: 44

eNext = getdd[q].firstChild; что за eNext ???
Ответить с цитированием
  #4 (permalink)  
Старый 13.02.2011, 17:58
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

Вы не поверите, но это переменная. Следующий вопрос...

Кстати, код надо форматировать, пожалейте тех, кто будет его тут читать.
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #5 (permalink)  
Старый 13.02.2011, 20:22
Аспирант
Отправить личное сообщение для pernik Посмотреть профиль Найти все сообщения от pernik
 
Регистрация: 13.02.2011
Сообщений: 44

как функции работают ??? почму + и - 2 ???
Ответить с цитированием
  #6 (permalink)  
Старый 14.02.2011, 00:08
Аспирант
Отправить личное сообщение для pernik Посмотреть профиль Найти все сообщения от pernik
 
Регистрация: 13.02.2011
Сообщений: 44

а перевести в квери реально?
Ответить с цитированием
  #7 (permalink)  
Старый 14.02.2011, 00:34
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от pernik
как функции работают ??? почму + и - 2 ???
на сайте есть справочник по языку.
Сообщение от pernik
а перевести в квери реально?
разберитесь сперва с основами языка
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прелоадер (помогите разобраться) xsfd AJAX и COMET 6 16.09.2010 02:30
Помогите разобраться!!! Greendumb Общие вопросы Javascript 8 19.08.2010 14:04
Помогите разобраться с кодом. TheWanderer Общие вопросы Javascript 10 17.04.2010 13:41
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 10:44
Помогите разобраться с галереей IMAGIN yana_studio Общие вопросы Javascript 4 12.12.2009 17:24