关于JavaScript的事件
刚刚学习Javascript的事情,我不明白这是什么东西。书中是这样说的,所有事件都以对象存在。但我还是不明白,学习事件到底可以干什么,不要问为什么,没有的一本书会告诉你。(自小教导学习从来没有问有什么用的)不过凭常识可以知道,像click,mouseover这些都是事件。在IE中,事件对象是window对象的一个属性:event。但是标准的DOM中获取事件对象却与IE不同,从各大搜索引擎可以知道。
我做了一个很小的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>An XHTML 1.0 Strict standard template</title>
<meta http-equiv="content-type" content="text/html;charset=gbk" />
<script type="text/javascript">
function onClick(e){
e = e || window.event;//兼容事件
target = document.getElementById("foo");
var obj = target.getAttribute('title');
alert(obj);
}
window.onload=function(){
var d = document.getElementById("foo");
d.onclick = onClick; //响应的函数
}
</script>
</head>
<body>
<div id="foo" title="testing...">Hello,Wolrd!</div>
</body>
</html>
这跟平常的有什么不同,它可以完成什么重要工作?在初级阶段,我还是不懂。下面还有一个例子,可以让我觉得怎么像是监听事件。只不过可以判断出事件的类型,难道这就是它的用处?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>An XHTML 1.0 Strict standard template</title>
<meta http-equiv="content-type" content="text/html;charset=gbk" />
<script type="text/javascript">
function handle(e){
var oDiv = document.getElementById("foo2");
e = e || window.event;
if (e.type == "click") {
oDiv.innerHTML+="点击了!";
}else if(e.type == "mouseover"){
oDiv.innerHTML+="你在我上面移过。";
}
}
window.onload=function(){
var oDiv = document.getElementById("foo1");
oDiv.onclick=handle;
oDiv.onmouseover=handle;
}
</script>
</head>
<body>
<div id="foo1" style="margin:0 auto;width:600px;height:300px;border:1px solid #aaa;text-align:center">鼠标单击和移过</div>
<div id="foo2"></div>
</body>
</html>

浙公网安备 33010602011771号