js鼠标右击函数(js怎么编写鼠标的右击**)
一、js 判断当前鼠标在哪个元素上
可以按以下思路步骤来实现:
1、声明一个变量(如el),用来存放鼠标所在的元素节点。
2、在body元素上增加一个鼠标**监听
3、使用**对象中的target属性,每当鼠标经过一个元素时,就把它赋值给el变量
任何时候,读取el变量的值即为鼠标当前所在的元素。
示例代码:
varel=window.document.body;//声明一个变量,默认值为body
window.document.body.onmouseover=function(event){
el=event.target;//鼠标每经过一个元素,就把该元素赋值给变量el
console.log('当前鼠标在',el,'元素上');//在控制台中打印该变量
}
二、js给某个text标签添加鼠标的双击**
js的单双击**同时存在会有一个问题:双击**会同时触发单击**,两个**存在冲突。
我们加一个延迟时间就能很好的解决这个问题。
原理:当接收到第一个点击时,我们先把单击**存储在这个是全局变量 click_store里,如果 0.3秒内没有接收到双击**,就去执行它,如果接收到了,我们把它清理掉,然后去执行双击**。setTimeout()可以实现延迟执行。
三、js怎么区分出点击的是鼠标左键还是右键
IE下 onMouseDown**有个 event.button可以返回一个数值,根据数值判断取得用户按了那个鼠标键 event.button==0默认。没有按任何按钮。 event.button==1鼠标左键 event.button==2鼠标右键 event.button==3鼠标左右键同时按下 event.button==4鼠标中键 event.button==5鼠标左键和中键同时按下 event.button==6鼠标右键和中键同时按下 event.button==7所有三个键都按下 event要是这个在运行时报错的话就用这个window.event
四、js怎么编写鼠标的右击**
js右击**
先贴代码:
注意的两个点是:
①:先取消默认右击**,event.preventDefault();
②:判断event.Button:0:左键,1:滚轮,2:右键。
值得一说的的是"oncontextmenu"是指右键按下时的作用。
再给一个应用吧:
右击div显示出自己定义的菜单,点击除了div的地方,是默认的右击**。
代码:
效果自行查看吧,其实也没啥。
原理是,右键的菜单其实是一个隐藏的div,当点击父类div的时候,它出现而已。(貌似这样一说显得这个程序好垃圾啊,_(___)_其实这也是大厦的一块砖,少了它,大厦会塌的)
再给了类似的应用吧,一个点击div消失的效果。