JavaScript事件
JavaScript事件分类:
1、捕获型(IE不支持)(从DOM结构的最顶端开始向下延伸)
2、冒泡型(从DOM结构的最低端向上一级级延伸)
【IE7以上可以给‘html’添加onclick事件,IE中body->html,火狐中html->body】
JavaScript添加事件监听:
1、IE:
[object].attachEvent("event_handler", fnHandler);
[object].detachEvent("event_handler", fnHandler);
当添加多个事件监听函数时,后添加的先调用,但并非严格上的先后顺序。
2、标准DOM的监听方法
[object].addEventListener("event_name", fnHandler, bCapture);
[object].removeEventListener("event_name", fnHandler, bCapture);
当添加多个事件监听函数时,先添加的先调用,而且严格按先后顺序执行。
JavaScript事件对象
在IE 浏览器中事件对象是window 对象的一个属性event,访问时通常采用如下方法。
oP.onclick = function(){
var oEvent = window.event;
}
尽管它是window 对象的属性,但event 对象还是只能在事件发生时被访问,所有的事件处理函数执行完之后,该对象就消失了。
而标准的DOM 中规定event 对象必须作为惟一的参数传给事件处理函数,因此在类似Firefox 浏览器中访问事件对象通常将其作为参数,代码如下:
oP.onclick = function(oEvent){
}
因此为了兼容两种浏览器,通常采用下面的方法。
oP.onclick = function(oEvent){
if(window.event) oEvent = window.event;
}
相关文档:
一、什么是事件冒泡
在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事 件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直 ......
<html>
<head><title>js可移动窗口的设计</title>
<script language="javascript">
var x0=0,y0=0,x1=0,y1=0;//初始化全局变量
var offx=6,offy=6;
var moveable=false;
var hover='orange';//color;
var index=10000;//z-index;
//关闭窗口
function closeWin(id)
{& ......
实现卡页式web的js:
function ShowContent(id,num){
for(i=1;i<=num;i++){
document.getElementById("page_"+i).className="";
document.getElementById("content_"+i).style.display="none";
}
document.getElementById("content_"+id).style.display="block";
......
<html>
<body>
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"
document.write(arr.concat(arr2))
</script>
</body>
</ ......