我有一个可调整大小和可拖动的盒子(灰色).可以通过从角落拉伸盒子来调整盒子的大小.
目前,只能通过从角落拉伸来调整盒子的大小.我希望能够从边缘调整大小.从角落拉伸使其在宽度和高度上均匀地伸缩.但是,在一条边上缩放,只会沿着长度缩放.同时,将其缩放到另一个边缘,将仅沿宽度缩放.我如何实现这一目标?
我的代码在这里.http://jsfiddle.net/akashdmukherjee/sa44ks9u/4/
HTML:
Left: , Right:
JS:
$('.draggable_div').draggable(); $( ".draggable_div" ).draggable({ drag: function( event, ui ) { var left_most_cordinates = $("#outer").offset().left; var top_most_cordinates = $("#outer").offset().top; $("#x_and_y_of_inner").text( "Left: " + left_most_cordinates + " Top: " + top_most_cordinates ); ui.position.left = Math.min( left_most_cordinates, ui.position.left ); ui.position.top = Math.min( top_most_cordinates, ui.position.top ); } }); $('.resizable').resizable({ aspectRatio: true, handles: 'ne, se, sw, nw' }); $(document).on('mouseover', '.rot', function(){ var tc = $(this); tc.rotatable({ handle:tc.children('.rotate.left, .rotate.right') }); return true; });
CSS:
.draggable_div { position: relative; display: -moz-inline-stack; display: inline-block; vertical-align: top; zoom: 1; *display: inline; cursor: hand; cursor: pointer; } .resizable { width: 50%; border: 1px solid #bb0000; } .resizable img { width: 100%; } .ui-resizable-handle { background: #f5dc58; border: 1px solid #FFF; width: 9px; height: 9px; z-index: 2; } .ui-resizable-se { right: -5px; bottom: -5px; } .ui-rotatable-handle { background: #f5dc58; border: 1px solid #FFF; border-radius: 5px; -moz-border-radius: 5px; -o-border-radius: 5px; -webkit-border-radius: 5px; cursor: pointer; height: 10px; left: 50%; margin: 0 0 0 -5px; position: absolute; top: -5px; width: 10px; } .ui-rotatable-handle.ui-draggable-dragging { visibility: hidden; }
Guruprasad R.. 6
如果要保留纵横比,则无法实现此目的.因此,基本上当您从中移除该选项时resizable
,您可以根据需要使用角在任何方向上拖动,并在高度和宽度上进行缩放.
$('.resizable').resizable({ //aspectRatio: true, //comment or remove this handles: 'ne, se, sw, nw' });
DEMO
如果要保留纵横比,则无法实现此目的.因此,基本上当您从中移除该选项时resizable
,您可以根据需要使用角在任何方向上拖动,并在高度和宽度上进行缩放.
$('.resizable').resizable({ //aspectRatio: true, //comment or remove this handles: 'ne, se, sw, nw' });
DEMO