<body><input id="btn" type="button" value="click"/><script> var btn=document.getElementById("btn"); btn.addEventListener("mousedown",function(event){ console.log("mousedown"); },false); btn.addEventListener("mouseup",function(){ console.log("mouseup"); },false); btn.addEventListener("click", function () { console.log("click"); },false); btn.addEventListener("dblclick", function () { console.log("dblclick"); },false);</script></body>
2、mouseenter和mouseover的区别
区别:
mouseover事件会冒泡,这意味着,鼠标移到其后代元素上时会触发。
mouseenter事件不冒泡,这意味着,鼠标移到其后代元素上时不会触发。
举例:
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> #outer{position: absolute;width: 200px;height: 200px;top:0;left: 0;bottom:0;right: 0;margin: auto;background-color: pink; } #inner{position: absolute;width: 100px;height:100px;top:50%;left:50%;margin-left: -50px;margin-top: -50px;;background-color: orange;text-align: center;line-height: 100px; } #outer,#inner{border-radius:50%; } </style> <script src="jquery-2.1.1.min.js"></script></head><body><body><div id="outer"> <div id="inner"> </div></div></body><script>var parentDiv=document.getElementById("outer");parentDiv.addEventListener("mouseover", function () { console.log("父div的mouseover事件被触发");},false);//parentDiv.addEventListener("mouseenter", function () {// console.log("父div的mouseenter事件被触发");//},false);//parentDiv.addEventListener("mouseout", function () {// console.log("父div的mouseout事件被触发");//},false);//parentDiv.addEventListener("mouseleave", function () {// console.log("父div的mouseleave事件被触发");//},false);</script></body></html>

note:
mouseover对应mouseout,mouseenter对应mouseleave。效果可以取消上面代码的注释来看。
jquery中hover API是把mouseenter 和mouseleave组合在一起来用的。
3、鼠标左键和右键
<script type="text/javascript">document.onmousedown=function (ev){ var oEvent=ev||event; alert(oEvent.button);// IE下鼠标的 左键是1 , 右键是2 ff和chrome下 鼠标左键是0 右键是2};</script>4、mouseover和mousemove的区别