Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 28.09.2018, 16:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Igorsrt
табы переключаются, якорь в адресной строке продолжает отображаться...
Сообщение от Igorsrt
нет, вот так не работает у меня... (якорь в ссылке пропадает, но и таб не переключается)
одно с другим не совпадает, может скопировали неудачно.
Ответить с цитированием
  #22 (permalink)  
Старый 28.09.2018, 16:25
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 642

я сам сверху писал )
var hash = location.hash.substr(1);


Сообщение от рони Посмотреть сообщение
почему без #?
) действительно, что это я

ладно, вроде бы забороли )
Ответить с цитированием
  #23 (permalink)  
Старый 29.09.2018, 08:10
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

блин, тут еще один момент:
изначально класс "w--current" стоял на первом заголовке в самом html, после наших (ваших ) доработок я его убрал (т.к. скрипт по другому не работал)... теперь если просто зайти на страницу с табами (не по ссылке), то активный заголовок никак не выделяется визуально(т.к. нет у него css класса).
Получается нужно этот класс вернуть по умолчанию в разметку html и добавить в скрипт, что бы он его удалял при срабатывании
<script type="text/javascript">
    document.addEventListener('DOMContentLoaded', function () {
      var hash = location.hash.substr(1);
      hash && document.getElementById(hash).classList.add('w--current')
      history.replaceState(null, null, window.location.href.replace(/#.*$/, ''));//replace state
    })

</script>

думал, сам смогу, вставив в скрипт "$('#one').removeClass('w--current');" - но так он этот класс всегда удаляет (даже при переходе по обычной ссылке из меню)... нужно какое-то условие прописать

Последний раз редактировалось Igorsrt, 29.09.2018 в 08:29.
Ответить с цитированием
  #24 (permalink)  
Старый 29.09.2018, 08:37
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

вот так вот сделал
<script type="text/javascript">
    document.addEventListener('DOMContentLoaded', function () {

      var hash = location.hash.substr(1);
	  if(hash){ $('#one').removeClass('w--current');}
      hash && document.getElementById(hash).classList.add('w--current')
      history.replaceState(null, null, window.location.href.replace(/#.*$/, ''));//replace state
    })

</script>

но, не уверен что это правильно )
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заставить барадатер открывать картинки-ссылки с js отправкой POST в новой вкладке Nikifor Элементы интерфейса 14 14.12.2017 07:27