jquery – 调整DIV面板的大小

前端之家收集整理的这篇文章主要介绍了jquery – 调整DIV面板的大小前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个网站项目,我需要添加一个可调整大小的面板,如jsfiddle或hotmail(hotmail有一个左侧面板,包含你的邮件,并有一个正确的内容面板,你可以阅读你的邮件……)

我看了jQuery,我尝试了很多次,但我无法设置处理程序.我只需要制作一个可以水平调整大小的面板.

那我该怎么做呢?你能帮我完成我的代码吗(在left_panel和内容之间需要一个缩放器.Resizer会调整left_panel的大小,当然内容也会受到影响.)

> http://jsfiddle.net/QkZL8

解决方法

这个小提琴不起作用,因为没有包含jQuery UI(所以jQuery UI可调整大小是未知的),但你也犯了语法错误,你应该这样做:
$(resize).resizable({
    handles: 'w'
});

不是这个:

$(resize).resizable({,handles: 'w',});

正如David在评论中所说的那样,你应该让面板本身可以调整大小,而不是在splitter元素之间.在resize处理程序中,您可以调整其他面板的大小,使其宽度与您实际调整大小的面板的宽度互补.

更新:这应该让你走在正确的轨道上:

$(resize).resizable({
    // only use the eastern handle
    handles: 'e',// restrict the width range
    minWidth: 120,maxWidth: 450,// resize handler updates the content panel width
    resize: function(event,ui){
        var currentWidth = ui.size.width;

        // this accounts for padding in the panels + 
        // borders,you could calculate this using jQuery
        var padding = 12; 

        // this accounts for some lag in the ui.size value,if you take this away 
        // you'll get some instable behavIoUr
        $(this).width(currentWidth);

        // set the content panel width
        $("#content").width(containerWidth - currentWidth - padding);            
    }
});

更新2:我在我的示例中添加了minWidth和maxWidth选项,因此您只能在这些边界内调整左列的大小.

UPDATED fiddle here

原文链接:https://www.f2er.com/jquery/177810.html

猜你在找的jQuery相关文章