Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 30.01.2017, 13:28
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

https://drive.google.com/file/d/0B4l...ew?usp=sharing
Ответить с цитированием
  #12 (permalink)  
Старый 30.01.2017, 13:42
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<style type='text/css'>
.box {
    display: none; 
    padding: 0px !important;
    background-color: #FFF;
}
.box.visible {
    display: block;
    padding: 10px;
}
ul.tabs {
    height: 27px;
    background: #FFF;
    border-bottom: 1px solid #777;
    padding: 0 4px;
    overflow: hidden;
    list-style: none;
}
.tabs li.current, .tabs li:hover {
    background-color:#52c8ff;
    color:#FFFFFF;
    border-color:#52c8ff;
    border-left-style: solid;
    border-right-style: solid;
    border-top-style: solid;
}
.tabs li {
    float: left;
    color: grey;
    line-height: 27px;
    margin-right: 1px !important;
    padding: 0 7px 10px 8px !important;
    font-weight: bold;
    cursor: pointer;
}
.tabs li.current span {
    color: #FFF;
}
.tabs li span {
    float: left;
    padding: 0 11px 0 0;
    height: 27px;
    color: #FFF;
}
</style>
<script type='text/javascript'>
$(function () {
	$('ul.tabs').delegate('li:not(.current)', 'click', function () {
		act(this);
	})
	function act(Obj){
		$(Obj).addClass('current').siblings().removeClass('current');
                var tabId = ($(Obj).index() + 1).toString();
		$('.info').html('Здесь какая-то информация ' + tabId);
                $('.pict').html('Здесь потом будет картинка ' + tabId);
                $('.add').html('А здесь еще какая-то информация ' + tabId);
	};
})
</script>
</head>
<body>
<div class="section"> 
    <div class="box visible">
	<div class='info'>Здесь какая-то информация 1</div>
	<div class='pict'>Здесь потом будет картинка 1</div>
    </div>
	
    <ul class="tabs">
        <li class="current">Вкладка 1</li>
        <li>Вкладка 2</li>
        <li>Вкладка 3</li>
     </ul>
     <div class='add'>А здесь еще какая-то информация 1</div>

</div>
</body>
</html>
Ответить с цитированием
  #13 (permalink)  
Старый 30.01.2017, 14:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Igorsrt,
для структуры
<div class="tabs">

            <ul>

                <li>1</li>

                <li>2</li>

                <li>3</li>

            </ul>

            <div>

                new 1

            </div>

            <div>

                new 2

            </div>

            <div>

                new 3

            </div>

        </div>


<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .tabs > div {
    display: none;
  }
  .tabs > ul > li.current {
     background-color: #52C8FF;
  }

  .tabs > ul > li {
      display: inline-block;
  }
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {
    $(".tabs").each(function(indx, el) {
        var li = $(">ul>li", el),
            divs = $(">div", el);
        li.on("click", function(event) {
            event.preventDefault();
            var i = li.index(this);
            li.not($(this).toggleClass("current")).removeClass("current");
            divs.not(divs.eq(i).toggle()).hide()
        })
    })
});
  </script>
</head>

<body>
<div class="tabs">

    <ul>

        <li>One</li>

        <li>Two</li>

        <li>Three</li>

    </ul>

    <div>

        <div class="tabs">

            <ul>

                <li>1</li>

                <li>2</li>

                <li>3</li>

            </ul>

            <div>

                new 1

            </div>

            <div>

                new 2

            </div>

            <div>

                new 3

            </div>

        </div>

    </div>

    <div>

        test 2  add tabs

    </div>

    <div>

        test 3 add tabs

    </div>

</div>



</body>
</html>
Ответить с цитированием
  #14 (permalink)  
Старый 30.01.2017, 14:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Igorsrt,
http://api.jqueryui.com/tabs/
Ответить с цитированием
  #15 (permalink)  
Старый 30.01.2017, 15:33
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

что-то, я не понял... или это не то (
В первом случае (коде Рони), весь контент "засунут" в скрипт и к нему подставляется ID таба?
Ответить с цитированием
  #16 (permalink)  
Старый 30.01.2017, 16:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от Igorsrt
весь контент "засунут" в скрипт и к нему подставляется ID таба?
не осилил
Ответить с цитированием
  #17 (permalink)  
Старый 30.01.2017, 16:46
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Igorsrt,
Сообщение от Igorsrt
В первом случае (коде Рони), весь контент "засунут" в скрипт и к нему подставляется ID таба?
М.б. не Рони? Пост 12?
Весь контент + ID таба засунут в скрипт для примера. У вас откуда появляется контент в табах?
В скрипте по конкретному ID таба можно брать контент с сервера или выбирать из заранее загруженного массива - совершенно необязательно иметь для каждого таба заранее расписанный html

Последний раз редактировалось Dilettante_Pro, 30.01.2017 в 16:49.
Ответить с цитированием
  #18 (permalink)  
Старый 30.01.2017, 18:05
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

Цитата:
М.б. не Рони? Пост 12?
да, не Рони... дико извиняюсь ((
контент в табах появляется из php функции...
насколько я понимаю, весь "геморой" в "моем" коде возникает из-за того что разным элементам li в раных div присвоены разным классам... Можно сделать так, что бы функция js "очищала" все элементы на странице (кроме нужного) от класса current?
Ответить с цитированием
  #19 (permalink)  
Старый 30.01.2017, 18:33
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Igorsrt,
Сообщение от Igorsrt
контент в табах появляется из php функции...
В php можно сформировать json-файл сразу по всему контенту и грузить в таб по ID или подгружать с сервера при выборе конкретного таба

Насчет очистки - удалите сначала класс у всех, потом назначьте нужному.
Ответить с цитированием
  #20 (permalink)  
Старый 30.01.2017, 18:40
Профессор
Отправить личное сообщение для Igorsrt Посмотреть профиль Найти все сообщения от Igorsrt
 
Регистрация: 21.02.2016
Сообщений: 271

Цитата:
М.б. не Рони? Пост 12?
да, не Рони... дико извиняюсь ((
контент в табах появляется из php функции...
насколько я понимаю, весь "геморой" в "моем" коде возникает из-за того что разным элементам li в разных div присвоены разные классы... Можно сделать так, что бы функция js "очищала" все элементы на странице (кроме нужного) от класса current?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прошу помощи довести до ума работу вложенных табов helgajijka jQuery 4 04.11.2015 01:38
Убирание блока при переключении табов pifon Общие вопросы Javascript 3 17.07.2013 14:07
jquery UI tabs - директ-линк с одного из табов ZmeY jQuery 0 29.12.2010 15:21