Javascript.RU

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

Плавный переход при смене класса
Здравствуйте. Необходимо сделать чтобы переход был плавным. При добавлении и удалении класса .active . появляется и скрывается блок. Подскажите плиз решение.

(function($) {
$(function() {

  $('ul.tabs__caption').on('click', 'li:not(.active)', function() {
    $(this)
      .addClass('active').siblings().removeClass('active')
      .closest('div.tabs').find('div.tabs__content').removeClass('active').eq($(this).index()).addClass('active');
  });

});
})(jQuery);


.tabs {
	width: 100%;
	height: 40px;
	margin: 30px auto;
	display: block;
}
.tabs__caption {
	height: 0px;
	font-family: 'Roboto',Verdana,Helvetica,Arial,sans-serif;
    font-size: 1.2em;
	line-height: 39px;
	list-style: none;
	margin: -90px 0px 0px;
	z-index:1;
	padding-left: 0px;
}
.tabs__caption li {
	float: left;
	display: inline;
	padding: 0 30px 1px;
	color: #A80000;
	cursor: pointer;
	background: #F9F9F9;
	border: 1px solid #E4E4E4;
	border-bottom: 1px solid #F9F9F9;
	position: relative;
	line-height: 30px;
}
.tabs__caption li:hover{
	color: #F70;
	background: #FFFFDF;
	border-top: 1px solid #FFCA95;
	border-left: 1px solid #FFCA95;
	border-right: 1px solid #FFCA95;
	line-height: 30px;
}
.tabs__caption .active {
	color: #FFF;
	background: rgb(255, 0, 0) none repeat scroll 0% 0%;
	border: 1px solid #D4D4D4;
	border-bottom: 1px solid #EFEFEF;
	line-height: 30px;
}
.tabs__content {
	display: none;
    width: 100%;
    margin-top: 8px;
}
.tabs__content.active {
	display: block;
}

<div class="tabs">
  <ul class="tabs__caption">
    <li class="active">Пункт 1</li><li class="">Пункт 2</li><li class="">Пункт 3</li>
  </ul>
  <div class="tabs__content active">
      <div class="left"> </div>
  </div>
   <div class="tabs__content">
      <div class="сenter"> </div>
   </div>
   <div class="tabs__content">
      <div class="right"></div>
  </div>
</div>

Последний раз редактировалось serggrodno, 29.01.2016 в 16:08.
Ответить с цитированием
  #2 (permalink)  
Старый 29.01.2016, 15:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

serggrodno,
информации недостаточно ... может вам css нужно настроить а не код, и смотрите в сторону типа .slideToggle(). для помощи вам нужен полноценный но лаконичный макет
Ответить с цитированием
  #3 (permalink)  
Старый 29.01.2016, 15:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

serggrodno,
на всякий случай забейте слово открывашка в поиск по форуму думаю это то что вам нужно.
Ответить с цитированием
  #4 (permalink)  
Старый 29.01.2016, 15:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

serggrodno,
а html?
Ответить с цитированием
  #5 (permalink)  
Старый 29.01.2016, 18:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Открывашка 252 ...
serggrodno,
пара сотен открывашка может тоже самое
Закрытие блока по нажатию в любом месте
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
body{
  background-color: #D2691E;
}

.tabs {
	width: 100%;
	height: 40px;
	margin: 30px auto;
	display: block;
}
 .tabs__caption {

	font-family: 'Roboto',Verdana,Helvetica,Arial,sans-serif;
    font-size: 1.2em;
	line-height: 39px;
	list-style: none;
	padding: 0;
    margin: 0;
}
.tabs__caption li {
    width: 100px;
     display: inline;
	padding: 0 30px 1px;
	color: #A80000;
	cursor: pointer;
	background: #F9F9F9;
	border: 1px solid #E4E4E4;
	border-bottom: 1px solid #F9F9F9;
	position: relative;
	line-height: 30px;
}
.tabs__caption li:hover{
	color: #F70;
	background: #FFFFDF;
	border-top: 1px solid #FFCA95;
	border-left: 1px solid #FFCA95;
	border-right: 1px solid #FFCA95;
	line-height: 30px;
}
 .tabs__caption .active {
	color: #FFF;
	background: rgb(255, 0, 0) none repeat scroll 0% 0%;
	border: 1px solid #D4D4D4;
	border-bottom: 1px solid #EFEFEF;
	line-height: 30px;
}
.tabs__content {
    display: none;
    width: 100%;
    height: 200px;
    background-color: #FF1493;
}
.tabs__content.active {
    display: block;
}
.tabs__content:nth-child(2){
  background-color: #0000FF;
}

.tabs__content:nth-child(3){
  background-color: #FFFF00;
}  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
(function($) {
    $(function() {

        $('.tabs').on('click', 'li', function(event) {
            $(this).addClass('active').siblings().removeClass('active');
            $('div.tabs__content', event.delegateTarget).not($('div.tabs__content', event.delegateTarget).eq($(this).index()).fadeIn()).hide();
        });

    });
})(jQuery);

  </script>
</head>

<body>
<div class="tabs">
  <ul class="tabs__caption">
    <li class="active">Пункт 1</li><li class="">Пункт 2</li><li class="">Пункт 3</li>
  </ul>
  <div class="tabs__content active">
      <div class="left">1 </div>
  </div>
   <div class="tabs__content">
      <div class="сenter">2 </div>
   </div>
   <div class="tabs__content">
      <div class="right">3</div>
  </div>
</div>


</body>

</html>

Последний раз редактировалось рони, 07.05.2019 в 20:27.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Звук при смене html ryabov Общие вопросы Javascript 3 29.09.2015 22:08
Присвоение класса при скроле pistachio jQuery 7 05.07.2015 18:50
Присвоение класса родителю при наведении на дочерний alexmoreman jQuery 7 19.01.2015 17:26
Добавление класса на елемент по id при фокусе на input Andrew_tl Events/DOM/Window 1 18.02.2010 19:09
Переход между окнами ввода при заполнении. Бушка Общие вопросы Javascript 4 25.03.2009 15:40