Javascript.RU

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

Как выделить активный пункт меню javascript
Помогите пожалуйста, хочу чтобы пункт меню выделялся при ее выборе.
<div id="gmenu">
<ul>
<li><a href="#" ><span>Главная</span></a></li>
<li><a href='#'><span>Пользователи</span></a></li>
<li><a href='#'><span>Новости</span></a></li>
<li><a href='#'><span>Гостиницы</span></a></li>
</ul>
</div>

Вот как должен выглядеть
<li><a href="#" class="current"><span>Главная</span></a></li>
и желательно указать где надо прописывать скрипт для выделения.
Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 11.01.2013, 17:22
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

А Учебник читать не пробовали?
Ответить с цитированием
  #3 (permalink)  
Старый 11.01.2013, 17:32
Новичок на форуме
Отправить личное сообщение для АртурГарик Посмотреть профиль Найти все сообщения от АртурГарик
 
Регистрация: 11.01.2013
Сообщений: 7

Читал вот что нужно
$('div.top_menu li').each(function () {if (this.getElementsByTagName("a")[0].href == location.href) this.className = "current";});

а как ее применить к моему коду?
Ответить с цитированием
  #4 (permalink)  
Старый 11.01.2013, 17:47
Аватар для Tek
Tek Tek вне форума
Профессор
Отправить личное сообщение для Tek Посмотреть профиль Найти все сообщения от Tek
 
Регистрация: 22.02.2012
Сообщений: 212

Сообщение от АртурГарик Посмотреть сообщение
Читал вот что нужно
$('div.top_menu li').each(function () {if (this.getElementsByTagName("a")[0].href == location.href) this.className = "current";});

а как ее применить к моему коду?
Что это за жесть?
если уж использовать jquery то что то в духе:
$("#gmenu > ul > li >a").click(function(){
  $(".current").removeClass("current");//Удаляем класс у прошлого выделенного
  $(this).addClass("current");//добовляем класс
});
Ответить с цитированием
  #5 (permalink)  
Старый 11.01.2013, 17:54
Новичок на форуме
Отправить личное сообщение для АртурГарик Посмотреть профиль Найти все сообщения от АртурГарик
 
Регистрация: 11.01.2013
Сообщений: 7

а где ее прописывать?
Ответить с цитированием
  #6 (permalink)  
Старый 11.01.2013, 17:56
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#gmenu > ul > li >a').each(function () {
  if($(this).attr('href') == location.href) $(this).addClass('Active');
});
});
</script>
<style>
.Active{
  border:2px solid red;
}
</style>

<div id="gmenu">
 <ul>
 <li><a href="http://javascript.ru/forum/" ><span>Главная</span></a></li>
 <li><a href='http://javascript.ru/forum/misc/'><span>Пользователи</span></a></li>
 <li><a href='http://lookatcode.com/showhtml'><span>Новости</span></a></li>
 <li><a href='http://lookatcode.com/asdfsdfl'><span>Гостиницы</span></a></li>
 </ul>
 </div>
Ответить с цитированием
  #7 (permalink)  
Старый 11.01.2013, 18:00
Новичок на форуме
Отправить личное сообщение для АртурГарик Посмотреть профиль Найти все сообщения от АртурГарик
 
Регистрация: 11.01.2013
Сообщений: 7

Спасибо большое)) вот что мне нужно было.
Ответить с цитированием
  #8 (permalink)  
Старый 11.01.2013, 18:18
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Tek
если уж использовать jquery то что то в духе
Чем ваш вариант отличается от варианта TC?

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function() {
    $('#gmenu').on('click', 'li', function(event) {
         $(this).addClass("active").siblings().removeClass("active");   
         event.preventDefault();
    });
});
</script>
<style>
.active {
  border:2px solid red;
}
</style>

<div id="gmenu">
 <ul>
 <li><a href="http://javascript.ru/forum/"><span>Главная</span></a></li>
 <li><a href='http://javascript.ru/forum/misc/'><span>Пользователи</span></a></li>
 <li><a href='http://lookatcode.com/showhtml'><span>Новости</span></a></li>
 <li><a href='http://lookatcode.com/asdfsdfl'><span>Гостиницы</span></a></li>
 </ul>
 </div>
Ответить с цитированием
  #9 (permalink)  
Старый 08.09.2013, 18:18
Аспирант
Отправить личное сообщение для SLameN Посмотреть профиль Найти все сообщения от SLameN
 
Регистрация: 13.08.2012
Сообщений: 70

А вот у меня почему то не работает, не подскажите почему?

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#menu > ul > li >a').each(function () {
  if($(this).attr('href') == location.href) $(this).addClass('active');
});
});
</script>

<div id="menu">
<ul id="nav">
<li><a href=''></a></li>
</ul>
</div>

#menu {
    background-color: #f4735e;
    width: 100%;
    height: 45px;
    border-radius: 0 0 10px 10px;
}

#nav {
    font-size: 15px;
    font-family: Tahoma, sans-serif;
    
}

#nav li a {
    outline: none;
    text-decoration: none;
    display: block;
    color: #ffffff;
    background-color: #f4735e;
    float: left;
    padding: 15px 15px;
}

#nav li a:hover, a:active, a:focus {
    background-color: #a3b754;
}

.active {
    background-color: blue !important;
}
Ответить с цитированием
  #10 (permalink)  
Старый 29.07.2014, 22:53
Новичок на форуме
Отправить личное сообщение для joystick8000 Посмотреть профиль Найти все сообщения от joystick8000
 
Регистрация: 29.07.2014
Сообщений: 1

А как можно это добавить к другой функции?
в JS полный ноль, как добавить можно к этой функции?
<script type="text/javascript">
$(document).ready(function() {
	
	
	$("#topnav li").prepend("<span></span>");
	$("#topnav li").each(function() {
		var linkText = $(this).find("a").html();
		$(this).find("span").show().html(linkText);
	}); 
	
	$("#topnav li").hover(function() {
		$(this).find("span").stop().animate({ 
			marginTop: "-40"
		}, 250);
	} , function() {
		$(this).find("span").stop().animate({
			marginTop: "0"
		}, 250);
	});
	
	
});
</script>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS Меню ? как дописать закрытие ? Nelly_ Элементы интерфейса 0 28.04.2012 15:40
Как выводить часть элементов страницы через javascript Victim Events/DOM/Window 9 28.12.2011 22:51
Как выделить активный пункт? dididima Общие вопросы Javascript 2 03.01.2011 01:29
Меню на дивах Golovastik (X)HTML/CSS 38 13.09.2010 09:10
Как передать картинку из javascript в php KIVagant AJAX и COMET 3 12.05.2010 11:54