Если быть точным, вы, ребята, могли заметить, что в Facebook этот компонент размещен в крайнем правом столбце, вот как он будет выглядеть, когда окно браузера развернуто:
![facebook frame (maximized window)](https://i.stack.imgur.com/32GVe.jpg)
Теперь, если я изменим размер окна моего браузера до меньшего размера, это будет выглядеть так:
![facebook frame(resized)](https://i.stack.imgur.com/wBcLo.jpg)
Как вы можете видеть, поскольку переполняется контейнер, изменяющий размеры (из-за изменения размера окна браузера), размер ручки (обведен красным) также изменен. Это позволяет прокрутить вниз до нижнего элемента внутри переполненного контейнера
Я создал аналогичный компонент, используя jQuery-Ui:
![My frame with scroll(maximized)](https://i.stack.imgur.com/o6QFA.jpg)
Но моя проблема в том, что я не смог рассчитать НОВЫЙ размер ручки для изменения размера контейнера:
![My frame with scroll(resized)](https://i.stack.imgur.com/Ezjte.jpg)
Здесь вы можете видеть, что я почти , но ручка действительно должна быть меньше, чтобы можно было прокручивать ее до конца (как в Facebook).
Мой вопрос: Какую формулу вы предлагаете использовать для достижения этой цели?
Вот что я до сих пор пробовал:
function calculate_grip_size() {
h = (parseFloat($('#box-container').css('height')) / parseFloat($('#box').css('height'))) * 100;
$('#grip').css('height', h);
}
и соответствующий ему HTML:
<div id="box-container">
<div id="area-track">
<div id="grip">
</div>
</div>
<div id="box">
<div class="ipsum">
Lorem ipsum...
</div>
<div class="ipsum">
Lorem ipsum...
</div>
<div class="ipsum">
Lorem ipsum...
</div>
<div class="ipsum">
Lorem ipsum...
</div>
<div class="ipsum">
Lorem ipsum...
</div>
<div class="ipsum">
Lorem ipsum
</div>
</div>
</div>