如何检查鼠标是否在元素上?
我将元素移动到光标位置,我需要检查鼠标是否在另一个元素上。怎么做?
<div class="dragged"></div> // I can move it
<div class="dropped"></div> // Need to drop here
$('.dragged').mousemove(function(e) {
...
if($(".dropped").is(":hover")) { // of course doesn't work
...
}
});
提前致谢。
答案 0 :(得分:8)
您可以尝试这样:
$('#test').click(function() {
if ($('#Test').is(':hover')) {
alert('Test');
}
});
<强> JS FIDDLE DEMO 强>
答案 1 :(得分:3)
一种有效的方法是在鼠标输入时“标记”.dropped标记元素。 最后,当你移动.dragged时,你可以检查.dropped是否有你放入的标签。
$('.dropped').hover(function() {
$(this).addClass('hovered');
}, function() {
$(this).removeClass('hovered');
});
$('.dragged').mousemove(function(e) {
...
if($(".dropped").hasClass(".hovered")) {
...
}
});
问候。
答案 2 :(得分:2)
试试这个:
var hovred=null;
$('.dropped').mouseenter(function(e) {
hovred=$(this);
});
$('.dropped').mouseleave(function(e) {
hovred=null;
});
$('.dropped').mousemove(function(e) {
...
if($(this)==hovred && hovred != null) {
//do your stuff here man
}
});
答案 3 :(得分:0)
做这样的事情。
var $container = $('.container');
$container.mouseenter(function(e) {
//do something
});
答案 4 :(得分:0)
<script type="text/javascript">
function call_mouseover()
{
alert("mouse is over on the div");
}
function call_mouseout()
{
alert("mouse out from the div");
}
</script>
<div class="dragged" onmouseover="call_mouseover();" onmouseout="call_mouseout();"></div>
<div class="dropped" ></div> // Need to drop here