当前位置:  开发笔记 > 编程语言 > 正文

如何制作这个可调整大小的div,可以从边缘调整大小?

如何解决《如何制作这个可调整大小的div,可以从边缘调整大小?》经验,为你挑选了1个好方法。

我有一个可调整大小和可拖动的盒子(灰色).可以通过从角落拉伸盒子来调整盒子的大小.

目前,只能通过从角落拉伸来调整盒子的大小.我希望能够从边缘调整大小.从角落拉伸使其在宽度和高度上均匀地伸缩.但是,在一条边上缩放,只会沿着长度缩放.同时,将其缩放到另一个边缘,将仅沿宽度缩放.我如何实现这一目标?

我的代码在这里.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



1> Guruprasad R..:

如果要保留纵横比,则无法实现此目的.因此,基本上当您从中移除该选项时resizable,您可以根据需要使用角在任何方向上拖动,并在高度和宽度上进行缩放.

$('.resizable').resizable({
    //aspectRatio: true, //comment or remove this
    handles: 'ne, se, sw, nw'
});

DEMO

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有