| 
 Изменить состояние нескольких Div и запонить их для пользователя Добрый день уважаемые форумчане. Только начал изучать Javascript и столкнулся с задачей итак 1- у нас имеется 2 Div-а : первый необходимо сделать невидимым , display - none, а второму изменить padding. 2 - Всё это необходимо активировать одним событием button onclick. Событие должно отрабатывать в обе стороны. Display none-visible , padding 1px-2px 3 - состояние обоих Div необходимо запомнить в печеньках. Господа кто может объяснить чайнику как это делается. С куками уже 3 день вожусь всё как-то очень печально и медленно. | 
| 
 Цитата: 
 http://htmlbook.ru/html5/storage | 
| 
 Цитата: 
 http://ruseller.com/lessons.php?id=593&rub=28 | 
| 
 запись смена печенек удалась, теперь шаг 2 сменна padding Итак, с cookiсами разобрались Код:  | 
| 
 Цитата: 
 obj.style.paddingLeft='-275px'; http://htmlbook.ru/css/padding-left | 
| 
 Добавляю следующее 
function changePaddingPlus() {
	            var paddingPlus = "25px";
	            document.getElementById("paddingdiv").style.paddingLeft = paddingPlus;
	            };
	        function changePaddingMinus() {
	            var paddingMinus = "275px";
	            document.getElementById("paddingdiv").style.paddingLeft = paddingMinus;
	        }
и естесвенно меняю button 
</head>
<body>
  <div id="toolo"> text 1
   <button class="toggle" id="hide" onclick="changePaddingMinus()">Open</button>          
  </div>
  <div id="toolo2">
     text 2
    <button class="toggle" id="show" onclick="changePaddingPlus()">Hide</button>
  </div>
<div class="paddingchange" style="padding:25px 35px 0 275px" id="paddingdiv">
Этот див при нажатии кнпки Hide должен сдвигать паддинг на лево на  '-275px'
А при нажатии на Show возвращать всё как было
</div>
</body>
</html>
Понимаю что это громоздко и неправильно, вернее было-бы засунуть всё в одну функцию с проверкой : 1 - если указано значение paddingLeft в кукисах, взять его 2 - если не указано значение paddingLeft , назначить его 275px, сохранить это в кукисах 3 - при обработки кнопки Hide - установить значение paddingLeft = 25px и сохранить его в кукисах 4 - при обработки кнопки Show - установить значение paddingLeft = 275px и сохранить его в кукисах но что-то у меня не очень получается. Есть идеи ? | 
| 
 Цитата: 
 | 
| 
 Реализованно довольно громоздко Это слепок с настоящего сайта, там короче очень нервный верстальщик который не намерен переделывать сайт в резиновый. Так что у некоторых Div очень странные параметры )) Выкручиваюсь как могу. Добавлено 16.06.2015 17:57 Решено 
<title>Demo mplugnjs</title>
<script type='text/javascript' src='http://code.jquery.com/jquery-2.1.3.js'></script>
<script type='text/javascript' src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
<script type="text/javascript" >
    $(function () {
        var state = $.cookie('state');
        var open = state == "open";
        $("#toolo").toggle(open);
        $("#toolo2").toggle(!open);
        $(".toggle").on("click", function (e) {
            e.preventDefault();
            var open = this.id == "show";
            console.log(open, this.id)
            $("#toolo").toggle(open);
            $("#toolo2").toggle(!open);
            $.cookie('state', open ? "open" : "closed", { expires: 3 });
        });
    });
    $(document).ready(function () {
        var paddingCookie = $.cookie('padding');
        if (paddingCookie != null) {
            document.getElementById('paddingdiv').style.paddingLeft = paddingCookie;
        }
        else if (paddingCookie == null || undefined) {
            document.getElementById('paddingdiv').style.paddingLeft = "275px";
        }
        alert(paddingCookie);
    });
    function changePaddingPlus() {
        var paddingPlus = "25px";
        document.getElementById("paddingdiv").style.paddingLeft = paddingPlus;
        $.cookie('padding', "25px", { expires: 3 });
    };
    function changePaddingMinus() {
        var paddingMinus = "275px";
        document.getElementById("paddingdiv").style.paddingLeft = paddingMinus;
        $.cookie('padding', "275px", { expires: 3 });
    }
</script>
</head>
<body>
    <div id="toolo">
        text 1
        <button class="toggle" id="hide" onclick="changePaddingMinus()">Open</button>
    </div>
    <div id="toolo2">
        text 2
        <button class="toggle" id="show" onclick="changePaddingPlus()">Hide</button>
    </div>
    <div id="paddingdiv" style="padding:35px 0px 0px 275px;">
        Этот див при нажатии кнпки Hide должен сдвигать паддинг на лево на  '-275px'
        А при нажатии на Show возвращать всё как было
    </div>
</body>
<script type="text/javascript">
   
</script>
</html>
ну и вот здесь можно посмотреть как пример работает . Господа буду благодарен за идеи оптимизации кода. | 
| Часовой пояс GMT +3, время: 23:45. |