I have 2 divs within a parent, one has .resizable, however i want it to have a max height in percentages, I have found the code that manages to resize the DOM, but i can't get it to work for me, I have got pretty close.
I want the resizable div to have a max height of 70% and min height of 30% (original resting point)
My fiddle:
fiddle[
^]
HTML
What I have tried:
My fiddle:
fiddle[
^]
HTML
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css">
<link rel="stylesheet" href="/resources/demos/style.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<body>
<div class="wrapper">
<div class="div">
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
</div>
<div class="resizable" id="resizable">
JS
$("#resizable").resizable({
autoHide: true,
handles: "n",
resize: function( event, ui ) {
var parent = ui.element.parent();
var height = ui.element.height();
height = Math.min(height, parent.height() * 0.7);
height = Math.max(height, parent.height() * 0.3);
ui.element.css({
height: height + 'px'
});
}
});
CSS
.wrapper {
position: fixed;
width: 100%;
height: 100vh;
}
.div {
position: absolute;
left: 0px;
top: 0px;
right: 0px;
width: 100%;
height: 70%;
background-color: #0098ff;
}
.resizable {
position: absolute;
left: 0px;
right: 0px;
bottom: 0px;
width: 100%;
height: 30%;
background-color: red;
}