Resizable
Use the mouse to change the size of an element.
For more details about resizable interaction, please view the API documentation Resizable Widget (Resizable Widget).
Default function
Enable resizable function on any DOM element. Drag the right or bottom border with the mouse to the desired width or height.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 默认功能</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 150px; height: 150px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } </style> <script> $(function() { $( "#resizable" ).resizable(); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">缩放(Resizable)</h3> </div> </body> </html>
Run Instance»
Click the "Run Instance" button to view the online instance
animation
Use the animate
option (boolean) to animate the scaling behavior. When this option is set to true, drag the outline to the desired position and the element will animate to that size when the drag stops.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 动画</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 150px; height: 150px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } .ui-resizable-helper { border: 1px dotted gray; } </style> <script> $(function() { $( "#resizable" ).resizable({ animate: true }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">动画</h3> </div> </body> </html>
Run Instance»
Click the "Run Instance" button to view the online instance
Limit zoom area
Define the boundaries of the zoom area. Use the containment
option to specify a parent DOM element or a jQuery selector, such as 'document.'
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 限制缩放区域</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #container { width: 300px; height: 300px; } #container h3 { text-align: center; margin: 0; margin-bottom: 10px; } #resizable { background-position: top left; width: 150px; height: 150px; } #resizable, #container { padding: 0.5em; } </style> <script> $(function() { $( "#resizable" ).resizable({ containment: "#container" }); }); </script> </head> <body> <div id="container" class="ui-widget-content"> <h3 class="ui-widget-header">限制</h3> <div id="resizable" class="ui-state-active"> <h3 class="ui-widget-header">缩放(Resizable)</h3> </div> </div> </body> </html>
Run Instance»
Click the "Run Instance" button to view the online instance
Delay start
Set the number of milliseconds to delay starting scaling with the delay
option. Use the distance
option to set the cursor to be pressed and dragged to the specified pixel before zooming is allowed.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 延迟开始</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable, #resizable2 { width: 150px; height: 150px; padding: 0.5em; } #resizable h3, #resizable2 h3 { text-align: center; margin: 0; } </style> <script> $(function() { $( "#resizable" ).resizable({ delay: 1000 }); $( "#resizable2" ).resizable({ distance: 40 }); }); </script> </head> <body> <h3 class="docs">时间延迟 (ms):</h3> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">时间</h3> </div> <h3 class="docs">距离延迟 (px):</h3> <div id="resizable2" class="ui-widget-content"> <h3 class="ui-widget-header">距离</h3> </div> </body> </html>
Run Instance»
Click the "Run Instance" button to view the online instance
Helper
By setting the helper
option to a CSS class, only the outline of the element is displayed when zoomed.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 助手</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 150px; height: 150px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } .ui-resizable-helper { border: 2px dotted #00F; } </style> <script> $(function() { $( "#resizable" ).resizable({ helper: "ui-resizable-helper" }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">助手</h3> </div> </body> </html>
Run instance »
Click the "Run instance" button to view the online instance
Maximum/Minimum Size
Use maxHeight
, maxWidth
, minHeight
and minWidth
option limits the maximum or minimum height or width of a resizable element.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 最大/最小尺寸</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 200px; height: 150px; padding: 5px; } #resizable h3 { text-align: center; margin: 0; } </style> <script> $(function() { $( "#resizable" ).resizable({ maxHeight: 250, maxWidth: 350, minHeight: 150, minWidth: 200 }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">放大/缩小</h3> </div> </body> </html>
Run instance»
Click the "Run instance" button to view the online instance
Keep aspect ratio
Keep the existing aspect ratio or set a new aspect ratio to limit scaling. Set the aspectRatio
option to true, and optionally pass a new ratio (e.g., 4/3).
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 保持纵横比</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 160px; height: 90px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } </style> <script> $(function() { $( "#resizable" ).resizable({ aspectRatio: 16 / 9 }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">保持纵横比</h3> </div> </body> </html>
Run instance»
Click the "Run instance" button to view the online instance
Align to Grid
Align resizable elements to the grid. Set the dimensions (height and width in pixels) of the grid cells via the grid
options.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 对齐到网格</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 150px; height: 150px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } </style> <script> $(function() { $( "#resizable" ).resizable({ grid: 50 }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">网格</h3> </div> </body> </html>
Run instance»
Click the "Run instance" button to view the online instance
Synchronized scaling
Resize multiple elements simultaneously by clicking and dragging the sides of an element. Pass a shared selector to the alsoResize
option.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 同步缩放</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { background-position: top left; } #resizable, #also { width: 150px; height: 120px; padding: 0.5em; } #resizable h3, #also h3 { text-align: center; margin: 0; } #also { margin-top: 1em; } </style> <script> $(function() { $( "#resizable" ).resizable({ alsoResize: "#also" }); $( "#also" ).resizable(); }); </script> </head> <body> <div id="resizable" class="ui-widget-header"> <h3 class="ui-state-active">缩放</h3> </div> <div id="also" class="ui-widget-content"> <h3 class="ui-widget-header">同步缩放</h3> </div> </body> </html>
Run instance»
Click the "Run instance" button to view the online instance
Text box
Scalable text box.
Instance
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 文本框</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> .ui-resizable-se { bottom: 17px; } </style> <script> $(function() { $( "#resizable" ).resizable({ handles: "se" }); }); </script> </head> <body> <textarea id="resizable" rows="5" cols="20"></textarea> </body> </html>
Run instance»
Click the "Run instance" button to view the online instance
Visual Feedback
By setting the ghost
option to true, a translucent element can be displayed during zooming instead of A practical element.
Example
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI 缩放(Resizable) - 视觉反馈</title> <link rel="stylesheet" href="//apps.bdimg.com/libs/jqueryui/1.10.4/css/jquery-ui.min.css"> <script src="//apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script> <script src="//apps.bdimg.com/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> <link rel="stylesheet" href="jqueryui/style.css"> <style> #resizable { width: 150px; height: 150px; padding: 0.5em; } #resizable h3 { text-align: center; margin: 0; } .ui-resizable-ghost { border: 1px dotted gray; } </style> <script> $(function() { $( "#resizable" ).resizable({ ghost: true }); }); </script> </head> <body> <div id="resizable" class="ui-widget-content"> <h3 class="ui-widget-header">Ghost</h3> </div> </body> </html>
Run Instance »
Click the "Run Instance" button to view the online instance