Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.04.2014, 17:29
Новичок на форуме
Отправить личное сообщение для youscript Посмотреть профиль Найти все сообщения от youscript
 
Регистрация: 21.04.2014
Сообщений: 2

При открытии одного списка меню закрывать остальные
Привет. Столкнулся с проблемой: при открытии списка меню - вылазиет за края. Хотелось бы иметь меню, которое открывает только один выпадающий список.
http://diamondclub.su/%D0%BA%D0%BE%D...A%D1%82%D1%8B/

function show(close_id, className1, className2) {	var close = document.getElementById(close_id);		if (close.className == className1) {		close.className = className2;	}
  else { 		close.className = className1;	}};
  
  function wait_for_jquery(){	if(typeof jQuery == 'function') {		setTimeout(menu_selector, 100);	}
  else{		setTimeout(wait_for_jquery, 100);	}}wait_for_jquery();
  
  function menu_selector(){	$(document).ready(function(){		var loc = window.location.href.replace(/\?.*?$/, ''); /*Ignore querystrings*/		var itemSelected = false;		$(".menus>ul>li>ul>li>a").each(function(){			if( loc == $(this)[0].href){				$(this).parent().parent().parent().removeClass('implicit-block').addClass('drop-block');				$(this).children("span").addClass("sub-selected");				itemSelected = true;				return;			}		});		if(itemSelected)			return;		/* Crazy amount of code to deal with the fact that there is code in CMS which should be on server		 *  And code which is on server and should be in CMS		 */		if($("h2").length == 0 || itemSelected)			return;		var parts = $("h2").html().split(/<br[^>]*>/im);		var level1 = parts[0].replace(/<span>/i, "").match(/[^<]+/).toString();		var level2 = jQuery.trim(parts[1]);		if(level2.match(/Fancy/))			level2 = 'Fancy Diamonds';		else if(level2.match(/Signature/i))			level2 = 'signature';				$(".menus>ul>li>a").each(function(){			if($(this).children("span").html() == level2 + " Education"){				$(this).parent().addClass('head-selected');			}			if(!level2.match(/(gold|silver|platinum)/i)){				if($(this).parent().hasClass("drop-down")){					$(this).parent().attr('class', '');					if( $(this).children("span").html() == level1					|| ($(this).children("span").html().match(/ring/i)							&& level1.toString().match(/ring/i))){						$(this).parent().addClass('drop-down').addClass('drop-block');					}					else{						$(this).parent().addClass('drop-down').addClass('implicit-block');					}				}else{					if( $(this).children("span").html() == level1 ){						$(this).parent().addClass('head-selected');					}				}			}		});		$(".menus>ul>li>ul>li>a>span").each(function(){			var rx = RegExp($(this).html().toLowerCase());			if(level2 == "Engagement Rings"){ 				if($(this).html() == "Ring Guide")					$(this).addClass("sub-selected");			}else if(level2 == "Wedding Ring Guide"){ 					if($(this).html() == "Wedding Ring Guide")						$(this).addClass("sub-selected");			}else if( ( level2.toString().toLowerCase().match(rx) 				|| $(this).html().toLowerCase().match(RegExp(level2))) 				){				var p = $("#" + this.parentNode.parentNode.parentNode.parentNode.id).children("a").children("span").html();				if(level1.indexOf(p) >= 0)					$(this).addClass("sub-selected");			}		});            /*Give pages a way to set their own selected drop down.*/            if ((typeof initAboutMenuFromPage !== 'undefined') && Object.prototype.toString.call(initAboutMenuFromPage) === '[object Function]') {              initAboutMenuFromPage();            }	});}
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Зависание кнопок меню при быстром переключении (onMouseOver) Kapitan79 Элементы интерфейса 3 06.11.2013 18:18
js для плавного увеличения пункта меню при наведении Серега187 Элементы интерфейса 2 19.10.2013 11:33
Dojo может подгружать информацию из пунктов меню только при клике на выбранный пункт? vlad275 Dojo toolkit 0 30.10.2008 15:56
изменение рисунка в меню при помощи Javasripta Maxim Общие вопросы Javascript 1 05.09.2008 14:59
Меню. При открытии любого пункта сворачивались все остальные Drako Элементы интерфейса 6 13.08.2008 13:56