Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменение размера блока по нажатию кнопки (https://javascript.ru/forum/dom-window/58389-izmenenie-razmera-bloka-po-nazhatiyu-knopki.html)

Globus 18.09.2015 22:37

Изменение размера блока по нажатию кнопки
 
У меня есть две кнопки, при нажатии на одну блок увеличивается, на вторую - уменьшается.

Подскажите, пожалуйста, как можно объединить эти две функции и повесить на одну кнопку,чтобы при нажатии первый раз увеличивался блок,а второй раз - уменьшался. Заранее спасибо!

<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script> 
$(document).ready(function(){
  $("#start").click(function(){  
    
    $("div").animate({
      
      height:'100%', 
      width:'100%'
      
      
       
    });
  });
 
  $("#stop").click(function(){
    $("div").animate({
       
      height:'284px',
      width:'100%'
      

    });
  });
});
</script>  
</head>
 
<body>
<button id="start">Start Animation</button>
<button id="stop">Stop Animation</button>
<div style="background:#98bf21;height:284px;width:100%;position:absolute;"> 

</div>

</body>
</html>

Decode 19.09.2015 00:38

<!doctype html>
<html>
<head>
  <meta charset="utf-8" />
  <title></title>
  <style>
    html, body {
      height: 100%;
    }
    
    body {
      margin: 0;
    }
    
    div {
      width: 100%;
      height: 284px;
      background: orange;
      position: absolute;
    }
  </style>
</head>
<body>
  <button>Жми</button>
  <div></div>


  <script src="https://code.jquery.com/jquery-2.1.4.js"></script>
  <script>
    var div = $('div'), baseHeight = div.height();

    $('button').click(function() {
      div.animate({
        height: (div.height() == baseHeight ? '100%' : baseHeight)
      });
    });
  </script>
</body>
</html>

Globus 19.09.2015 12:16

Благодарю! Про baseHeight не подумал даже :thanks:


Часовой пояс GMT +3, время: 23:24.