1

当鼠标单击 div 并开始拖动时,会在顶部构建另一个绝对 div。但是当我减小宽度和高度时,div 会闪烁。我注意到最初的 css 比例“top”和“left”导致了这种情况;

带有“顶部”和“高度”!= 0 http://jsfiddle.net/mCupS/

顶部:0 和左侧:0 http://jsfiddle.net/mCupS/1/

这是错的吗?我错过了什么吗?

$(selection_div).width(e.offsetX - xDown)
$(selection_div).height(e.offsetY - yDown)
4

1 回答 1

1

我不知道为什么,但event.offsetX不可靠。

我已经通过单独收听解决了您的问题mousedownmousemove然后mouseup

 $('#container').on('mousedown', function(mde){
        $('#container').on('mousemove', function(mme){
            $(selection_div).width(mme.pageX - mde.pageX)
            $(selection_div).height(mme.pageY - mde.pageY)
        });
        $('#container').on('mouseup', function(mue){
            $('#container').off('mousemove');            
        });                    
    });

在这里演示:http: //jsfiddle.net/mCupS/2/

于 2012-04-19T19:12:52.890 回答