jquery - 如何通过仅拖动它的一侧来调整 DIV 的大小?

标签 jquery html

让我更具体一点...我不希望 DIV 在我拖动时调整大小。我想将它拖出(可能有一条垂直线跟随我的光标),当我松开时,它会调整 div 的大小。

最佳答案

看看这个例子

HTML

<div id="sidebar">
     <span id="position"></span>
    <div id="dragbar"></div>
    sidebar
</div>
<div id="main">
    main
</div>

jquery

var dragging = false;
$('#dragbar').mousedown(function(e){
   e.preventDefault();

   dragging = true;
   var main = $('#main');
   var ghostbar = $('<div>',
                    {id:'ghostbar',
                     css: {
                            height: main.outerHeight(),
                            top: main.offset().top,
                            left: main.offset().left
                           }
                    }).appendTo('body');

    $(document).mousemove(function(e){
      ghostbar.css("left",e.pageX+2);
   });
});

$(document).mouseup(function(e){
   if (dragging) 
   {
       $('#sidebar').css("width",e.pageX+2);
       $('#main').css("left",e.pageX+2);
       $('#ghostbar').remove();
       $(document).unbind('mousemove');
       dragging = false;
   }
 });

演示在 http://jsfiddle.net/gaby/Bek9L/1779/

这是对我在 Emulating frame-resize behavior with divs using jQuery without using jQuery UI? 中发布的代码的改动

关于jquery - 如何通过仅拖动它的一侧来调整 DIV 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6219031/

相关文章:

javascript - 防止 div 元素在切换其他元素时移动?

javascript - 更新id拖放定位问题

html - anchor 链接问题 |适用于 firefox 但不适用于 chrome

javascript - Jquery Cookies 不工作

javascript - 使用 David Bradshaw 的 iFrameResize

jquery - 如何添加根据进度改变颜色的多色百分比条?

html - 无法使用tomcat服务器在eclipse中导航html文件

javascript - 如何指定 anchor 标记的行为类似于超链接,没有 href 且没有 anchor 名称?

javascript - 如何在当前之后调用先前绑定(bind)的事件?

jquery - 每次按下按钮时向下滚动一个 div