一、直接在HTML标记中指定,这种方法普遍使用
<INPUT TYPE button value="submit" onclick="show();">
如上,在单击submit按钮的时候,就会调用show()方法。
二、编写特定对象,特定事件的JavaScript
1 <script language="JavaScript" for="window" event="onload">
2 </script>
这个例子就是一个指向window对象,当它在加载的时候,触发这段script代码。
三、在JavaScript中添加代码,指向特定对象
<script language="JavaScript">
var a = document.getElementById("username");
a.onblur = function(){
alert(a.value);
}
</script>
这个例子中,有一个Id为username的控件(可以是一个text文本框)。当这个控件失去焦点的时候,会执行这段script代码。注意的是,这段script代码要写在这个控件的下方,否则在加载的时候,会发生因为找不到该控件而报的空指针错误。
实用事件举例:
1、获取键盘按键值
<SCRIPT LANGUAGE="JavaScript">
<!--
function keyDown(event){
event = event||window.event;//兼容两种浏览器,前者兼容firefox,后者兼容IE
var s = "";
s+="Alt:"+event.altKey;//ctrlKey,shiftKey,keyCode,type等熟悉
document.write(s);//打印输出
}
document.onkeydown=keyDown;//触发事件
//-->
</SCRIPT>
2、鼠标事件
<HEAD>
<Script LANGUAGE="JavaScript">
function mousemove(event){
event=event||window.event;
var s ="";
s+=event.button;//clientX clientY 客户端上的坐标值
//offsetX offsetY 相对于鼠标点击对象位置的坐标 onfilterchange事件的滤镜对象 event.srcElement获取屏幕上的元素
document.write(s);
}
</Script>
</HEAD>
<BODY>
<input type = "button" value = "ok" onmousedown="mousemove(event)"/>
</BODY>
3、事件的冒泡问题
问题描述:div(底层)中事件会向body(上层)中同类事件传递
解决方法:IE 事件对象.cancelBubble = true; 火狐 事件对象.stopPropagation();
一些常用的事件:onsubmit onfocus onblur onmouseover(鼠标移动到控件上面时触发) Onmousemove(当鼠标移动时,触发)