将元素拖动到其可滚动的父div之外-(React-Draggable)

时间:2018-12-10 07:46:43

标签: javascript css reactjs typescript drag-and-drop

反应可拖动,我正在实现拖放功能 其中必须将 div (带有图片和一些元素)拖放到不同的类别中,但是 当我们拖动元素时,它只能在父div和 当我们尝试将其拖出时,div位于div后面。

enter image description here

可拖动元素:

<Draggable
        position={{ x: 0, y: 0 }}
        onDrag={this.props.groupPageDragStartHandler}
        onStop={(event) => this.props.groupPageDragStopHandler(event, this.props.group, this.props.pageInfo)}
        defaultClassNameDragging="groupItemDragging"
        >
        <div className="group-report-items col-sm-4">
            <div className="canvas-outer">
                <input type="checkbox" className="checkbox" id={checkBoxId} value={checkBoxId} checked={this.state.selected} />
            <canvas
                    className="groupCanvas"
                    id={canvasId}
                    height="792"
                    width="612"
                    ref="imageCanvas"
                    onClick={(event) => this.selectHandler(event, this.props.group, this.props.pageInfo)}></canvas>
            <a canvas-id={canvasId} href="javascript:void(0)" className="search">
                <i className="glyphicon glyphicon-search">
                </i>
                </a>
                <a href="javascript:void(0)" className="trash">
                    <i className="glyphicon glyphicon-trash" onClick={(event) => this.props.onPageDeleteHandler(event, this.props.group, this.props.pageInfo)}>
                </i>
            </a>
        </div></div></Draggable>

有一种方法可以将父div外部的元素拖到所需的目标位置,我正在使用与Typescript交互

注意:我仍然可以将元素放入其目标位置,但唯一的问题是div落后了,而且看起来有些糟。

1 个答案:

答案 0 :(得分:0)

此问题的解决方法是,包含拖动元素的div有一个滚动

overflow-y: scroll;

拖动时将其删除。之后,我可以将元素移到div之外。花了很多时间试图找出元素,却没有考虑调整滚动条。