Jquery 如何在拖动时使可拖动元素在屏幕中所有元素的顶部可见?

Jquery 如何在拖动时使可拖动元素在屏幕中所有元素的顶部可见?,jquery,css,jquery-ui,sapui5,Jquery,Css,Jquery Ui,Sapui5,我需要在SAPUI5表和树表中实现拖放功能 我有一个表,其中有一组名称,用户应该能够拖动,还有一个树表,它应该接受拖动对象,因此它被定义为一个拖放区域 我使用JqueryUI将控件设置为拖放,效果很好 问题是,当我将名称拖向树表时,它会隐藏在表后面,这会让用户感到困惑 当我浏览代码时,我发现这个问题是由于与CSS相关的位置引起的,这在SAPUI5中是默认应用的 拖放代码: var oMemberId; $(".selector Table").draggable({

我需要在SAPUI5表和树表中实现拖放功能

我有一个,其中有一组名称,用户应该能够拖动,还有一个树表,它应该接受拖动对象,因此它被定义为一个拖放区域

我使用JqueryUI将控件设置为拖放,效果很好

问题是,当我将名称拖向树表时,它会隐藏在表后面,这会让用户感到困惑

当我浏览代码时,我发现这个问题是由于与CSS相关的位置引起的,这在SAPUI5中是默认应用的

拖放代码:

var oMemberId;
$(".selector Table").draggable({
        helper: "clone",
        cursor: "pointer",
        revert: "invalid",  
        zIndex: 9999,
        start: function(event) {
            oSelectedId = this.parentNode.previousSibling.firstChild.childNodes[0].value;
                }
}).disableSelection();           

$(".selector treetable").droppable({ 
    drop: function(event){
        var dataLevel=(this.attributes["data-sap-ui-level"].value);
        var oDropAreaId = this.childNodes[2].textContent;
    }
}).disableSelection();

如何防止被拖动的项目隐藏

在拖动过程中操纵拖动对象的
dragstart
上的z-index CSS属性,然后将其放回

Javascript:

$( ".selector" ).on( "dragstart", function( event, ui ) {
    $(ui.helper).css('z-index', '100000');
} );

$( ".selector" ).on( "dragstop", function( event, ui ) {
    $(ui.helper).css('z-index', '1');
} );

默认情况下,被拖动的项被设置为类“ui draggable dragging”(在控制台中自己检查)

因此,您只需更改css中的z索引:

.ui-draggable-dragging {
    z-index:99999;
}
var-oMemberId;
$(“.selector表”).draggable({
助手:“克隆”,
光标:“指针”,
回复:“无效”,
zIndex:9999, 遏制:“窗口”, 开始:功能(事件、用户界面){ oMemberId=this.parentNode.previousSibling.firstChild.childNodes[0]。值; }, 拖动:函数(事件、ui){ $(“.selector div.sapUiTableCnt,.selector div.sapUiTableCtrlScr”).css(“溢出”,“可见”); } }).disableSelection()


我写的css太多了。

你能提供你的拖放代码吗?如果我没弄错的话,你可以在那里提供一个z索引。它不起作用。但是我得到了结果。请看下面我的答案,它不起作用。但是我得到了结果。请看下面我的答案