嵌套 dndkit SortableContext 的奇怪无限重新渲染行为
我目前正在尝试构建一个带有列表和任务的类似 trello 的应用程序。我想合并拖放功能,因此添加了 dndkit 库。我已经设法使任务可排序
我无法让一个孩子覆盖父母溢出,但不能让另一个孩子覆盖 #第二行{ 显示:网格; 网格模板列:重复(5,1fr); 间隙:0px; 高度:503px; } .在...
使用@dnd-kit/core库时通过警告获取aria-描述
我正在使用 @dnd-kit/core 库来实现拖放功能,但每次安装组件时我都会收到此特定警告。 警告:道具“aria-descriptedby”不匹配。瑟...
我有一个使用 C# winforms 的项目已经有一段时间了。我在windows 7发布之前实现了拖放功能。工作起来就像一个魅力。但是,当使用 Windows 7 时,它不起作用。 ...
在拖放中,如果我们必须先进行选择,然后必须通过单击按钮提交,那么我必须使用什么类型的函数或事件处理程序? 我尝试过react-beautiful-dnd,但是...
有没有办法通过拖放来调整容器的大小? 有没有办法通过拖放来调整<div>容器的大小? 最好的方法是使用CSS3。至少 Webkit 和 Gecko 支持。 根据w3c规范: div.my_class { resize:both; overflow:auto; /* something other than visible */ } Webkit 和 Firefox 对规范的解释方式不同。在 Webkit 中,大小仅限于设置的宽度和高度。还有一个问题:如何使用 CSS 使元素的尺寸调整为小于初始尺寸? 关于这一点。 div { border: 1px solid black; } .resizable-content { min-height: 30px; min-width: 30px; resize: both; overflow: auto; max-height: fit-content; max-width: fit-content; } <div class="resizable-content">Resize Me!</div> 纯 CSS3 方法的问题是只有 div 的右下角可以拖动。用户几乎肯定会想要从任意的边框调整 div 的大小,而不仅仅是右下角。 在浪费了大量时间尝试通过从 Stack Overflow 复制代码片段来完成此任务之后,我强烈建议在您的项目中使用优秀的 InteractJS JavaScript 库。它允许您轻松创建可调整大小(且可拖动)的 div,并且可以从各个方向调整大小。 let root = document.documentElement; let spliter = document.querySelector('.spliter-div'); let rowDiv = document.querySelector('.row-divs'); let cd1 = document.getElementById('cd-1'); var isDown = false; var isHover = false; var minWidth = 127; var maxWidth = 600; function setPosition() { var cl = this.document.querySelector('.col-div'); if (cl) { root.style.setProperty('--m-x', (cl.offsetWidth + 3.5) + 'px'); } minWidth = (parseInt(rowDiv.clientWidth / 10) * 2) + 22; maxWidth = parseInt(rowDiv.clientWidth - minWidth); } function moveTo(e) { if (e.clientX > minWidth && e.clientX < maxWidth) { if (cd1.classList.contains('col-div-flex')) { cd1.classList.remove('col-div-flex'); } cd1.style.width = e.clientX + 'px'; root.style.setProperty('--m-x', (e.clientX + 9.5) + 'px'); } } window.addEventListener('DOMContentLoaded', function (e) { setPosition(); }); window.addEventListener('resize', function (e) { setPosition(); }); root.addEventListener('mousedown', function (e) { if (isHover) { isDown = true; } }, true); document.addEventListener('mouseup', function (e) { isDown = false; if (isHover) { //... } }, true); document.addEventListener('mousemove', function (e) { if (isDown) { moveTo(e); } }); spliter.addEventListener('mouseenter', function (e) { isHover = true; spliter.style.cursor = 'col-resize'; }); spliter.addEventListener('mouseout', function (e) { isHover = false; }); :root{ --m-x: 0px; } html, body{ height: 100% ; width: 100% ; margin: 0 ; overflow: hidden ; } body{ margin-bottom: 60px ; } .container-divs{ display: flex ; flex: 1 1 auto ; height: 100% ; width: 100% ; } .row-divs{ display: flex ; width: 100% ; } .col-div{ margin: 3px ; padding: 3px ; min-width: 20% ; max-width: 80% ; } .col-div-flex{ flex: 1 0 0%; } .border-div{ border: 1px #a3a3a3 ridge; border-radius: 9px; } .spliter-div{ width: 5px ; height: 96% ; margin: 3px 0; background: #9a969676; position: absolute; left: var(--m-x); margin-top: 9px ; cursor: col-resize; } <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Divs - Resizeable</title> </head> <body> <div class="container-divs"> <div class="row-divs"> <div id="cd-1" class="col-div col-div-flex border-div" style="background-color:#d5ff00f7"> </div> <div class="spliter-div"></div> <div id="cd-2" class="col-div col-div-flex border-div" style="background-color: #6719b5e2"> </div> </div> </div> </body> </html> 如果您需要为 mustberesizeable tags 数组中的每个标签(也是 )执行某个函数 doOnResize(tag),您可以简单地将此数组复制到 window 的数组中: window[WIN_RESIZED] = [] // init the window's array for (var i in tags) { window[WIN_RESIZED].push(tags[i]) } 那组之后 window.addEventListener('resize', function(e){ for (var i in window[WIN_RESIZED]) { doOnResize(window[WIN_RESIZED][i]) } }) 必须写在开头的某个地方 const WIN_RESIZED = 'move_resized_divs' 具有任意名称,例如“move_resized_divs”
Angular 7 带来了强大的 DragDropModule:https://material.angular.io/cdk/drag-drop/examples 该文档涉及重新排列列表中的项目或在列表之间转移项目
Chrome 更新后,使用 angular-native-dragdrop 在 AngularJS 项目中拖放不起作用
我有一个旧的 AngularJS 项目,我在其中使用 angular-native-dragdrop 包来实现拖放功能。将 Chrome 更新到版本 125.0.6422.61 后,拖放功能已停止
使用@dnd-kit/core,默认行为是让被拖动的元素(以及 DragOverlay 中的 div)相对于其原始位置进行拖动。如果我单击并拖动 Draggable 到某个位置...
我的目标是拥有多个按钮,通过将文本从一个按钮拖动到另一个按钮,可以在屏幕上切换其文本(不需要切换按钮本身,只需切换
我在容器内有一个位图。当我拖动容器时,光标会更改为编辑文本形状,并且图像也会跳转到光标的右下角(就像我按住
我有一个带有粘性标题和垂直滚动的表格。下面是该图像。 在 td 内部,我有包含数据(对象)的 div,Div 是可拖动的,并且它们工作正常。问题是...
反应美丽的 DND - “无法找到 ID 为 X 的可拖动对象”
我正在尝试使用react-beautiful-dnd对列表进行拖放排序,但我的元素不可拖动,并且无法找到id为X的可拖动。我已经用示例交叉检查了我的代码。 ..
React:单击第 1 列旁边的“打开面板”以显示第 3 列中的项目不起作用
我是 React 新手,当我单击第 1 列旁边的打开面板时,第 3 列项目应该显示 我使用了 use state 但仍然不起作用。 我调试了但仍然没有运气。 提供代码和沙箱...
将生成的文件(例如 MIDI)从 Pyside6 或 Qt 应用程序拖放到另一个应用程序(例如 DAW)
我想编写一个简单的 Qt 应用程序(使用 Python 和 PySide6),它将生成一个 midi 文件,以便用户可以将其直接拖到他们的 DAW 中(例如 Reaper、Ableton、Bitwig)。 我有 定义
下面我给出了我的代码: 从硒导入网络驱动程序 从 selenium.webdriver.common.keys 导入密钥 从 selenium.webdriver 导入 ActionChains 从 selenium.webdriver.common.by 导入 乙...
我正在尝试在 Maui 项目中的两个 CollectionView 之间实现拖放。 在我的示例中,我在第一个 CollectionView 中有一个歌曲集合,在第二个集合中有一个播放列表组...
我有这样的数据结构: [{ id: 'a', 订单:9 }, { id: 'b', 订单:6 }, { id: 'c', 订单:4 }, { id: 'd', 订单:2 }] 我想以这种方式更新订单值: [{ 编号:...
有没有办法在 Angular 中的 Bowser 选项卡之间移动 HTML?
我正在尝试构建一个 Angular (v17) 应用程序,它允许用户通过拖放 HTML 元素来移动,甚至可以在多个浏览器选项卡之间移动。与 neo.mjs 的功能类似(h...
JSFiddle:https://jsfiddle.net/40vpaLj5/ 我用谷歌搜索了一些问题,我发现的唯一消失的相关问题是当人们在模态上使用它时,他们谈论设置 z-index 来修复......