0

我有 2 个 div,左 div 和右 div,左 div 包含树视图,右 div 包含网格。我可以将项目从网格拖到树视图中,当我将鼠标悬停在节点上时,树视图具有展开树视图的代码。

由于树解释了由于树视图的大小而存在滚动条 - 当我将一个项目拖到完全展开的树视图中时它不允许我一直拖到底部,问题是当我拖动滚动条时不滚动,所以目前我通常需要使用滚动条查看的任何项目 - 它不允许我在树视图上拖动到足以看到这些项目的方式。

左 div 具有以下内容:-

{
    display: inline-block;
    width: 350px;
    height: 800px;
    float: left;
    overflow: auto;
}

任何建议都会很棒。

4

1 回答 1

0

作为用户,您仍然可以使用鼠标滚轮滚动。作为设计小部件的人,我建议在树的上方和下方添加几个像素高的热点(带有绑定到 mousemove 事件的 javascript 的 div)。在 mousemove 事件中,向上或向下滚动树(取决于悬停的热点) - 然后用户将能够通过在热点上摆动鼠标来滚动树。

如果被拖动的对象拦截了 mousemove 事件(很可能),那么您必须添加一些代码来检查对象是被拖动到树的上方还是下方,并相应地滚动树(以适当的速度)。该代码必须位于可以判断鼠标位置的元素上 - 可能是 body 元素。

于 2012-06-01T11:38:45.977 回答