如何在按下鼠标按钮时触发' onMouseEnter '
How to fire `onMouseEnter` while mouse-button is pressed?
如何使JavaScript触发目标<div>
-元素的onMouseEnter
-事件,而另一个拖动的<div>
进入元素(按下鼠标按钮)?
由于几个原因,我不能使用onDrag...
事件…
示例:https://jsfiddle.net/5dgnez9e/3/
您应该在文档中监听mousedown
和mouseup
,并将鼠标状态存储在一个全局变量中,然后您可以在元素的mouseenter
事件中检查状态
$(document).ready(function(){
var mouseClicked = false;
document.body.onmousedown = function() {
mouseClicked = true;
}
document.body.onmouseup = function() {
mouseClicked = false
}
$(".element").on("mouseenter",function(){
if(mouseClicked){
console.log("entered");
}
});
});
您可以查看此提琴的工作示例
我做了一个小片段,看看:
<!DOCTYPE HTML>
<html>
<head>
<style>
#div1 {width:160px;height:160px;padding:10px;border:1px solid #aaaaaa;}
</style>
<script>
function allowDrop(ev) {
ev.preventDefault();
}
function drag(ev) {
ev.dataTransfer.setData("text", ev.target.id);
}
function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("text");
ev.target.appendChild(document.getElementById(data));
}
</script>
</head>
<body>
<p>Drag the image into the rectangle:</p>
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
<br>
<img id="drag1" src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Google_Chrome_icon_(2011).svg/2000px-Google_Chrome_icon_(2011).svg.png" draggable="true" ondragstart="drag(event)" width="120" height="120">
</body>
</html>
鼠标拖动应该可以工作。
无论如何,一个解决方法:
是维护一个布尔值,用来跟踪鼠标按下事件。
当按下时,设置布尔标志为true。
释放时设置布尔标志为false。
触发鼠标进入偶数时,检查标志
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 多个单选按钮组相互干扰
- JavaScript下拉菜单-点击按钮并根据所选值重定向到url
- Javascript按钮下拉列表
- jquery试图按名称获取按钮位置
- 漂亮照片图片库中的Facebook赞按钮
- 扩展移相器按钮类不工作
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 单击按钮以等待单击按钮
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 如何从querySelectorAll中获取按钮类型
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 按下按钮时保存cookie
- 是否可以禁用jquery中的单个单选按钮
- ASP.NET通过单击JavaScript按钮触发c#事件
- 当我点击jsf中的primefaces命令按钮时,如何获得点击事件
- 如何在按下鼠标按钮时触发' onMouseEnter '
- asp.net onMouseEnter修改按钮的位置