Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 17.07.2012, 19:56
Интересующийся
Отправить личное сообщение для aults Посмотреть профиль Найти все сообщения от aults
 
Регистрация: 17.07.2012
Сообщений: 11

Deff,
вот вся конструкция в данный момент
<div id="ttt">
<ul>
<a href="/usludi_po_ozeleneniyu.html">Услуги по озеленению<a/> - основная
<a href="/usloviya.html">Условия<a/> - дополнительная
<a href="/ceny.html">Цены<a/> - дополнительная
</ul>
</div>


<script type="text/javascript">
$.each($("#ttt a"), function(){if(this.href == location.href.split('?')[0].split('#')[0]) this.className = "left_menu_selected";});
</script>
Ответить с цитированием
  #22 (permalink)  
Старый 17.07.2012, 20:00
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

aults,
Т. е если совпала - хоть одна ссылка с ссылкой в Адресной строке - нам нужно поставить выделения на все ссылки выше данной, включая и её саму ?
Ответить с цитированием
  #23 (permalink)  
Старый 17.07.2012, 20:04
Интересующийся
Отправить личное сообщение для aults Посмотреть профиль Найти все сообщения от aults
 
Регистрация: 17.07.2012
Сообщений: 11

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

<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<style type="text/css">
#ttt a.active {
 color:red!important;
}
</style>


<div id="ttt">
<ul>
<a href="/usludi_po_ozeleneniyu.html">Услуги по озеленению</a> - основная<br />
<a href="/usloviya.html">Условия</a> - дополнительная<br />
<a href="/ceny.html">Цены</a> - дополнительная<br />
</ul>
</div>

<script type="text/javascript">
var TstLink =location.href.split('?')[0].split('#')[0].replace(/^.*[^\/]\//g,'/');
var TstLink = "/usloviya.html" //Тестовая строка -только для теста, затем убрать

$("#ttt ul a").each(function(){
  if($(this).attr('href').indexOf(TstLink)!=-1){
   var Arr_a=$(this).parent().find('a');
   var Cickl=Arr_a.index(this);
     for(var i=0; i<=Cickl; i++){
       Arr_a.eq(i).addClass('active')
     }
  }
});
</script>
Ответить с цитированием
  #25 (permalink)  
Старый 18.07.2012, 00:48
Интересующийся
Отправить личное сообщение для aults Посмотреть профиль Найти все сообщения от aults
 
Регистрация: 17.07.2012
Сообщений: 11

Deff,
хорошо, а по какому принципу скрипт определяет главную (верхнюю) ссылку
Ответить с цитированием
  #26 (permalink)  
Старый 18.07.2012, 00:52
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

aults,
Он находит текущую ссылку, - далее смотрит её индекс в массиве ссылок родительского блока - далее проставляет class=active от 0(это и есть первая ссылка до текущего индекса(включая его)
Текущий индекс = это Cickl)
Ответить с цитированием
  #27 (permalink)  
Старый 24.07.2012, 09:29
Новичок на форуме
Отправить личное сообщение для panictmn Посмотреть профиль Найти все сообщения от panictmn
 
Регистрация: 15.07.2012
Сообщений: 2

Deff,
Почитал вашу переписку с Aults, заданый вопрос решился..., спасибо вам!
но возник другой:
теперь таже проблемма с боковым меню:
[xfgiven_leftcol]
                <div id="ttt">
		<div class="LeftCol ">
			<ul class="left_menu">
[xfgiven_name1]
				<li>
<a href="[xfvalue_link1]" target="">[xfvalue_name1]</a>
				</li>
[/xfgiven_name1]
[xfgiven_name2]
				<li>
<a href="[xfvalue_link2]" target="">[xfvalue_name2]</a>
				</li>
[/xfgiven_name2]
[xfgiven_name3]
				<li>
<a href="[xfvalue_link3]" target="">[xfvalue_name3]</a>
				</li>
[/xfgiven_name3]
[xfgiven_name4]
				<li>
<a href="[xfvalue_link4]" target="">[xfvalue_name4]</a>
				</li>
[/xfgiven_name4]
		</ul>			
		</div>
	</div>	
<script type="text/javascript">
$.each($("#ttt a"), function(){if(this.href == location.href.split('?')[0].split('#')[0]) this.className = "left_menu_selected";});
</script>
	<div class="container WithoutRightCol">
	<div class="content ">
[/xfgiven_leftcol]


Здесь выделение ссылки опять же пропадает при смене текущей ссылки (например при пролистывании страницы) тоесть изначально page1, - ссылка выделена, когда она становится page2 - выделение пропало.

как всетаки прописать скрипту четкие ссылки при открытии которых надо "держать" выделение пункта меню ?
Ответить с цитированием
  #28 (permalink)  
Старый 22.01.2014, 12:18
Новичок на форуме
Отправить личное сообщение для a-key Посмотреть профиль Найти все сообщения от a-key
 
Регистрация: 22.01.2014
Сообщений: 1

Здравствуйте, форумчане!
Как выделить несколько активных ссылок?
Пример - текущий url /service/design
надо выделить ссылку /service
также ссылка /service/design должна подсвечиваться...
Я так предполагаю не надо сравнивать url и href, а искать совпадения, но как?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Всплывающее меню анкеты-заявки - нужна помощь justnz jQuery 1 02.04.2012 21:38
Проблема с аккордионом и меню Tie ExtJS 3 01.09.2011 14:36
Прячется меню, нужна помощь! Skesh Элементы интерфейса 2 22.03.2011 19:17
Очень нужна помощь с Ext JS dcbal ExtJS 1 09.07.2010 13:15
нужна помощь dominosoko Серверные языки и технологии 4 14.03.2010 02:17