【发布时间】:2018-04-10 05:05:15
【问题描述】:
我的页面包含一个红色和一个蓝色div:
<div id="red"></div>
<div id="blue"></div>
它们都是绝对定位的,并且相隔很小:
#red {
background-color: red;
width: 5em;
height: 5em;
position: absolute;
left: 5em;
top: 5em;
}
#blue {
background-color: blue;
width: 5em;
height: 5em;
position: absolute;
left: 15em;
top: 5em;
}
我有一些代码可以判断用户是否单击并将鼠标从一个div 拖动到另一个:
$('#red').mousedown( function () {
$('#blue').mouseup( function () {
alert('Red to Blue')
})
})
$('#blue').mousedown( function () {
$('#red').mouseup( function () {
alert('Blue to Red')
})
})
如果用户在按住鼠标按钮的情况下直接将鼠标从一个div 移动到另一个,这在第一次时会完美运行。
不过有两个问题:
- 如果用户在
div之外释放鼠标按钮然后单击另一个按钮,mouseup仍将运行。 - 在第一次之后的任何时候,用户都必须在
div之外单击,以便处理程序正常工作。
【问题讨论】:
标签: javascript jquery html css user-interface