| <!DOCTYPE html> |
| <html> |
| <head> |
| <style> |
| html, body { |
| height: 100%; |
| } |
| |
| #aligner { |
| height: 100%; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| } |
| |
| #container { |
| width: 50%; |
| height: 50%; |
| background: #FF9800; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| cursor: pointer; |
| position: relative; |
| } |
| |
| #dimensions { |
| font-size: 3em; |
| color: #FFF; |
| } |
| |
| #dim-x, #dim-y { |
| color: #263248; |
| } |
| |
| </style> |
| </head> |
| <body> |
| <div id="aligner"> |
| <div id="container"> |
| <div id="dimensions"> |
| <span id="dim-x"></span>x<span id="dim-y"></span> |
| </div> |
| </div> |
| </div> |
| |
| <script src="../node_modules/jquery/dist/jquery.min.js"></script> |
| <script src="../build/element-resize-detector.js"></script> |
| <script> |
| $(function onDomReady() { |
| function updateDimensions(element) { |
| var style = getComputedStyle(element); |
| var width = parseInt(style.width); |
| var height = parseInt(style.height); |
| $("#dim-x").html(width); |
| $("#dim-y").html(height); |
| } |
| |
| var container = $("#container"); |
| |
| var erd = elementResizeDetectorMaker({ |
| strategy: "scroll", |
| callOnAdd: true, |
| debug: true |
| }); |
| erd.listenTo(container, updateDimensions); |
| |
| container.click(function onContainerClick() { |
| function rand(min, max) { |
| return Math.floor(Math.random() * (max - min + 1)) + min; |
| } |
| |
| var width = rand(30, 90); |
| var height = rand(30, 90); |
| |
| $(this).css({ |
| width: width + "%", |
| height: height + "%" |
| }); |
| }); |
| }); |
| </script> |
| </body> |
| </html> |