【JavaScript高级程序设计】19、事件类型(1)
鼠标点击时候按键事件
当我们在网页上点击鼠标的时候,按下ctrl,shift,win,alt键的时候都是可以用JavaScript来进行监控的
<!DOCTYPE html>
<html>
<head>
<title>Client coordinates Example</title>
<script type="text/javascript" src="EventUtil.js"></script>
</head>
<body>
<div id="myDiv" style="background-color:green;height:10000px;width:10000px">Click me</div>
<script>
var div = document.getElementById("myDiv");
//给div元素添加监听事件
EventUtil.addHandler(div, "click", function(event)
{
//这里判断,在我们执行点击事件的时候,键盘是否按下ctrl,shift,alt,或者meta(window下为win键,Mac下是cmd键
event = EventUtil.getEvent(event);
var keys = new Array();
if(event.shiftKey)
{
keys.push("shift");
}
if(event.ctrlKey)
{
keys.push("ctrl");
}
if(event.altKey)
{
keys.push("alt");
}
if(event.metaKey)
{
keys.push("meta");
}
alert("Keys:" + keys.join(","));
});
</script>
</body>
</html>
效果:




鼠标离开或者进入时相关元素
<!doctype html>
<<html>
<head>
<title>相关元素</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="EventUtil.js"></script>
</head>
<body>
<div id="myDiv" style="background-color:red;height:100px;width:100px">移动到这里</div>
<script type="text/javascript">
//这里为鼠标进入div然后离开div的时间进行判断
var myDiv = document.getElementById("myDiv");
//这个mouseover是鼠标光标进入当前元素的事件,相关对象就是离开的那个元素对象
EventUtil.addHandler(myDiv, "mouseover", function(event)
{
event = EventUtil.getEvent(event);
//这个获取的就是相关事件,那么我们给dive添加了这个事件
//那个获取到的就是鼠标进入div的时候触发,那么相关事件就是body事件
var target = EventUtil.getRelatedTarget(event);
alert("相关元素是:" + target);
}
);
</script>
</body>
</html>
显示结果:


浙公网安备 33010602011771号