TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Click and Swap, our alternative to Drag and Drop

106 pointsby francoismassotover 3 years ago

11 comments

DGCAover 3 years ago
I worked at an ed-tech startup that allowed teachers to use our bank of questions to create assignments for their students. We found that drag and drop came with a few issues, such has having to implement keyboard accessibility separately from the drag and drop mechanism, moving things when the number of items is big, and some general confusion around certain UX.<p>The solution we ended up with, which is similar to the OP, is what we affectionately called Pick n Plop. I.e. you select an item, the UI tells you where it can go, and you click again to place it. You get keyboard accessibility for free since it&#x27;s just buttons.<p>Demo right here (sorry for the terrible quality): <a href="https:&#x2F;&#x2F;giphy.com&#x2F;gifs&#x2F;9KgZorKdwdsaolomxS&#x2F;fullscreen" rel="nofollow">https:&#x2F;&#x2F;giphy.com&#x2F;gifs&#x2F;9KgZorKdwdsaolomxS&#x2F;fullscreen</a>
评论 #30042268 未加载
评论 #30042232 未加载
评论 #30047283 未加载
评论 #30045341 未加载
twobitshifterover 3 years ago
I used a software that required you to drag the mouse to draw lines to connect components and I remember several other users getting pain in their wrists from the repeated dragging action with the mouse. The act of pressing the button and dragging seems to be much less ergonomic than moving the mouse alone. So I now think that two separate clicks should be preferred.
jon_richardsover 3 years ago
I feel like this discussion can’t be complete without dragon drop: <a href="https:&#x2F;&#x2F;mrcoles.com&#x2F;dragondrop&#x2F;" rel="nofollow">https:&#x2F;&#x2F;mrcoles.com&#x2F;dragondrop&#x2F;</a>
评论 #30043996 未加载
评论 #30043781 未加载
wildrhythmsover 3 years ago
Every time I think about this problem (whether it&#x27;s clicking-drag to re-order, or click-and-swap as described here) I always wonder if there&#x27;s some smart &quot;box packing&quot; algorithm that will just distribute the elements with some &quot;suggestions&quot; (x,y) about where they should fit and let the algorithm place everything.
评论 #30042129 未加载
评论 #30042062 未加载
francoismassotover 3 years ago
I would love to see a demo to feel the UX. I&#x27;m not fond of drag and drop and really want to test the click and swap.
评论 #30042123 未加载
goodlinksover 3 years ago
Fwiw I hate drag and drop on left click, I wish it was on right click (or even better required a key press at the same time).<p>Its way to easy to accidentally do. I am often left with not know what happened and having to ctrl-z in my desktop environment.. something which is equally scary (something somewhere was undone).
评论 #30042765 未加载
评论 #30044705 未加载
conradludgateover 3 years ago
I have found that drag and drop is an awful UX pattern in recent years.<p>Via a physical mouse, it&#x27;s fine. But trackpads are such a common set up these days and you cannot reliably drag and drop, especially since sometimes you need to lift a finger to drag further. The only solution I can think of would be to have a key that initiates a drag and you can hold the key while to continue the drag - but there&#x27;s currently no standardisation in this pattern
评论 #30045539 未加载
TheRealNGeniusover 3 years ago
Cool to see what looks like diagrams made in Excalidraw. Never thought I&#x27;d see a professional use case for messy diagrams, but I really enjoyed the look and feel of those diagram. It felt refreshing compared to the usual diagrams that I see which often lack artistic merit.
评论 #30044062 未加载
eternityforestover 3 years ago
A lot of GUI paradigms can benefit from being a little less similar to their physical counterparts.<p>Especially visual programming. Probably would be way more successful if they would abandon the free &quot;Put nodes anywhere and connect them&quot; model for a lists-and -trees kind of model.
oncodeover 3 years ago
How is the grid-wrapper element able to reposition the grid-item elements on a state change? Probably not the render function, since there will be only a slot element inside grid-wrapper? Does it set the position after the render with setting inline css?
Flimmover 3 years ago
Drag and Drop is fiddly on touch screens and even on touchpads.