jQuery UI可调整大小 – 操作方向

如何确定调整大小操作的方向?我尝试了谷歌搜索,并在 jquery ui上找到一张机票,说它是固定的.但是没有关于如何使用它的文档.

解决方法

不确定您是否希望限制特定轴的调整大小操作,或者想知道实际调整大小的方向.

如果你想要前任,Rayell的答案可以工作.我会讨论后者.

如果你设置了这样的可调整大小:

var r = $("#resizable");
r.resizable();

假设您想知道在用户释放鼠标按钮之后,调整大小发生的方向.我们将一个函数绑定到resize stop事件:

r.bind('resizestop',function(event,ui) {
    // determine resize deltas
    var delta_x = ui.size.width - ui.originalSize.width;
    var delta_y = ui.size.height - ui.originalSize.height;
}

使用传递的ui对象,我们可以通过从旧大小减去新的大小来确定大小的相对变化.之后,您可以使用delta_x和delta_y,但是您希望.我们来构建一个与其中一个句柄对应的字符串.

r.bind('resizestop',ui) {

    // determine resize deltas
    var delta_x = ui.size.width - ui.originalSize.width;
    var delta_y = ui.size.height - ui.originalSize.height;

    // build direction string
    var dir = '';

    if (delta_y > 0) { 
        dir += 's';
    } else if (delta_y < 0) { 
        dir += 'n';         
    }      

    if (delta_x > 0) { 
        dir += 'e';
    } else if (delta_x < 0) { 
        dir += 'w';
    }

    // do something with this string
    alert(dir);        
});

请注意,如果您在元素的两边都有句柄,那么它不一定会返回哪个句柄实际用于执行调整大小,只是它的净方向.

相关文章

jQuery表单验证提交:前台验证一(图文+视频)
jQuery表单验证提交:前台验证二(图文+视频)
jQuery如何实时监听获取input输入框的值
JQuery怎么判断元素是否存在
jQuery如何实现定时重定向
jquery如何获取复选框选中的值