我已經設置jQuery拖放從一個div到另一個div,它工作正常。從div滾動條拖放 - 溢出-y滾動VS溢出-x可見
但是,源div有時會超出屏幕的高度,所以我需要爲它添加一個垂直滾動條。這就是我遇到臭名昭着的溢出問題的地方。
div需要具有overflow-x:visible,以便拖動元素在被移動到目標div時可見。但是,當我將overflow-y:scroll或overflow-y:auto添加到源div時,突然溢出x不再起作用。
我去過W3和一些StackOverflow的問題,我意識到這不是一個錯誤,但意圖的行爲(儘管爲什麼這是打算超出我)。但是,我還沒有找到適合我的解決方案。
我已經嘗試添加一個包裝div來源DIV像一些答案建議,然後執行以下操作:
.wrapper {
width: 100px;
position: absolute;
top: 4vw;
left: 0;
bottom: 4vw;
overflow-y: auto;
}
.source {
position: relative;
overflow: visible;
z-index: 2;
}
<div class="wrapper">
<div class="source">
<!-- draggable elements go here -->
</div>
</div>
<div class="target">
<!-- draggable elements drop here -->
</div>
但是,儘管源div的溢出現在即可,包裝仍然隱藏水平溢出。我想我可以將包裝的寬度增加到全屏,並使背景不可見,並使屏幕上的所有其他內容具有更高的Z-index,以便不在包裝後面,但對於這樣的包裝而言,這似乎是一個荒謬的不好的解決方案簡單的問題。
任何人都可以幫助我嗎?
如果一個CSS解決方案不實際,任何人都可以提供一些可以解決問題的Javascript?
代碼示例:jsfiddle
你可以來複制此問題 –
這裏有一個小提琴小提琴:https://jsfiddle.net/9ush466w/ – jovan