事件 驱动 程序 | |||
事件 | event | 鼠标或热键的动作 | onclick |
事件驱动 | event-driven | 鼠标或热键引发的一连串程序的动作 | <h3 onclick="go4(5);"> |
事件驱动程序 | event handler | 对事件进行处理程序或函数 | <script>
function go4(ao){} </script> |
JS的基于对象,对像的实例化是使用new关键字,而VF类的具体化是对象,是可见;
对于一个函数,如果要求其自动运行,可按两种方式设置:
1 window.onload=InitClock;
</SCRIPT>
2 <body onload="floater();
事件模型 | 发生时间 | 适用对象 |
load | 文档加载时发生 | body,frameset |
unload | 退出文档或frame时发生 | body,frameset |
abort | 文档元素加载中断时发生 | img |
blur | 元素失出焦点时发生 | body,form中各元素 |
change | 元素内容发生变化时发生 | form中单行文本text,多行文本textarea,列表框select; |
click | 鼠标点击时发生 | all tags |
dbclick | 鼠标双击时发生 | all tags |
dragDrop | 鼠标拖动后发生 | body frameset,frame |
error | 装入文档出错时发生 | body frameset,frame |
focus | 元素获得焦点时发生 | body frameset,frame |
keyDown | 按下键盘时发生 | all tags |
keyPress | 按下键盘并放开时发生 | all tags |
keyUp | 放开键盘时发生 | all tags |
mouseDown | 按下键盘时发生 | all tags |
mouseMove | 鼠标移动时发生 | all tags |
mouseOver | 鼠标在元素范围内时发生 | all tags |
mouseUp | 松开鼠标按键时发生 | a,body,form中的按钮元素 |
move | 当用户移动窗口或frame时发生 | body frameset,frame |
reset | 用户单击form中复位按钮时发生 | form |
resize | 用户改变窗口或frame大小时发生 | frameset,frame |
select | 用户选择元素内容时发生 | form中单行文本text,多行文本textarea |
submit | 用户单击form中提交按钮时发生 | form |
当特定的操作发生或者状态改变时,事件将被触发.例如,当用户在页面上单击时\或单击页面上的超链接时,或者当鼠标指针移过某段文字时,都可能触发相应的事件.另外一个经常用到的事件是页面的load事件,当页面加载时将触发这个事件.
那么,事件对我们有什么用呢?
为了说明事件的作用,让我们来看一个例子,当用户在页面上的任何地方单击鼠标时,我们希望弹出一个菜单.假定我们写好了产生弹出菜单的函数,但是我们怎么知道什么让菜单弹出呢?或者换句话说,我们什么时候调用这个产生弹出菜单的函数呢?因此,我们需要以某种方法捕获用户单击页面的事件,并且确保一旦单击页面的事件发生时,产生弹出菜单的函数即被调用.
为了实现这个功能,需要使用一种称为事件处理器(event handler)的机制.当事件发生时,事件处理器将连接到需要执行的事件处理代码.事件处理器提供了当事件发生时捕获事件\并且执行相应事件处理程序的机制.通常我们把在代码中加入事件处理器称为"将事件处理代码连接到事件".这有点类似于设置一个闹钟---当某个事件发生时,使闹钟振铃.对于一个闹钟来说,这个触发事件就是当到达某一确定的时间点时.
通过事件处理器,可以使用多种方法将事件处理代码连接到事件.
通常鼠标或热键的动作称为事件(event),由鼠标或热键引发的一连串程序动作,称为事件驱动(event driver),而对事件进行处理的程序或函数,称为事件处理程序(event handler).
1 鼠标和键盘事件:onclick,onmousedown,onmouseup,onmouseover,onmouseout,onkeypress,onkeydown,onkeyup;2 页面相关事件:加载与卸载事件:onload,onunload;页面大小事件:onresize;
3 表单相关事件:获得焦点与失去焦点事件:onfocus,onblur;推出焦点修改事件:onchange;表单提交与重置事件:onsubmit,onreset;
4 滚动字幕事件:marquee:onbounce,onstart;
5 编辑事件:文本编辑事件:onbeforecopy,oncopy,oncut,onpaste,onselect;对象手动事件:ondrag;
事件函数(对象事件方法)与事件响应函数(脚本)
<html>
<head>
<title>Javascript如何实现网页动态</title>
</head>
<script language="javascript">
function welcome(){
window.alert("欢迎光临我们的网站");} //事件响应函数②;
</script>
<body><p><form>
单击弹开欢迎对话框
<input type=button value="welcom" onclick="welcome()"> //用户单击动作的响应函数onclick(),响应用户动作的函数①
</form></p></body>
</html>
以上是一个alert方法应用;②赋给①
在上面的例子中,我们定义了一个welcome函数,在该函数中,我们应用文档对象模型提供的window对象的alert方法弹出一个对话框。然后我们将welcome函数赋给按钮的onclick事件,这样,当用户单击按钮时,就执行函数welcome中的代码,弹出一个对话框;
我们将welcome()函数赋给按钮的onclick()响应函数,为样,welcome()函数便成为鼠标单击按钮的响应函数,当单击操作发生时,浏览器便去寻找该函数,并将控制权暂交给welcome()函数;对用户单击按钮操作进行响应;
JS脚本的应用就在于编写事件响应函数,来动态响应用户操作,动态改变网页内容;