The point of all JavaScript coding is to enrich the user experience without burdening the user with a cognitive and physical overload. The problem with JavaScript drag and drop is that it forces the user to perform additional gestures to get the desired result (moving an item to the shopping cart, moving it again to the trash and so on). For users with physical disabilities this can actually turn out to be very stressing and frustrating. An user who has slow gestures due to his/her age won't be probably able to perform simple tasks such as pointing and clicking the mouse on an item and then moving it around the screen.
Further, drag and drop doesn't exist in JavaScript per se. Internet Explorer supports certain events related to this practice, such as dragstart
, but there are no correlatives either in other browsers or in the specifications. Simply put, what you see is the result of a continuous mapping and tracking of the mouse coordinates on the screen, combined with other mouse events, such as mouseleave
.
For that reason, drag and drop is not supposed to work in all possible circumstances. For example, Blogger uses this technique to rearrange blog templates. In certain cases and browsers, it doesn't work as it should. And the final effect on a Blogger user is only one: frustration. I know that drag and drop is certainly a nice touch on a site, but you should always bear in mind how this feature will be perceived by your users and, to a less extent, by browsers.