我知道这是一个相当具体的问题,但我会去...
我正在使用Orangoo的工具来制作可排序列表。表格工作正常。看他的例子: http://orangoo.com/AJS/examples/sortable_list.html
但是,如果我想添加输入或其他表单元素,我无法单击输入。鼠标会在那里停留一秒然后消失,因为ondrag事件处理的东西正在接管。
我不想从LI中删除拖动事件,因为我想重新排序输入元素。相反,如果我点击一个输入,我想要一种方法来保持焦点或忽略ondrag处理。我无法弄清楚如何覆盖ondrag事件。如果有人能够提供帮助,我将非常感激!
答案 0 :(得分:2)
当用户点击输入时,您需要阻止事件被触发以进行拖放操作。只需处理mousedown事件并使用event.stopPropagation()。
示例:
document.getElementById("input1").onmousedown = (function(e) {
e.stopPropagation();
});
答案 1 :(得分:0)
感谢您的回答!我最终放弃了,只是关闭了事件处理程序。
<input id="inputId" name="inputName" value="some value" onmousedown="AJS.dnd.removeDragAble(this.parentNode);" onblur="AJS.AEV(this.parentNode, 'mousedown', this.parentNode._start_fn);" />