易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript中事件event详解

脚本中的事件有2种模型
1、  冒泡型事件:事件是按照从最特定的目标到最不特定的事件目标(document)的顺序依次触发。这是针对不同元素的同一事件类型
如:
<html  onclick=”handleClick()”>
<head></head>
<body onclick=”handleClick()”>
  <div  onclick=”handleClick()”>
</body>
</html>
click事件的触发顺序为div——>body——>document
微软的IE就采用的是冒泡事件模型
2、  捕获型事件:和冒泡事件相反,事件是按照从最不特定的目标(document)到最特定的目标的顺序依次触发。这是针对不同元素的同一事件类型
 如上面的示例,handleClick事件的触发顺序为document——>body——>div
标准的DOM采用两种事件模型,既有捕获型事件,又有冒泡型事件,用户可以根据需求选择相应的事件模型
事件处理函数的绑定\卸载:
1、  针对IE
[object].attachEvent(“name_of_event_handler”,fnhandler);
[object].detachEvent(“name_of_event_handler”,fnhandler);
如:
var  dom=document.getElementById(“div1”);
dom.attachEvent(“onclick”,handlerClick)
注意:一定要在事件类型前加on
2、  针对兼容DOM的浏览器
[object].addEventListener(“name_of_event”,fnhandler,bCapture);
[object].removeEventListener(“name_of_event”,fnhandler,bCapture);
注意,第三个参数bCapture标示选择的事件模型,为true,选择捕获型事件模型,为false,选择冒泡型事件模型
如:
var dom =document.getElementById(“div1”);
dom.addEventListener(“click”,handleClick);
阻止事件的传递:
1、  阻止事件的默认行为
事件的默认行为是指一些元素自身绑定的事件处理函数,像鼠标右键事件,文本框的输入事件等。
如果要阻止鼠标的右键事件,可以采用
l         IE
window.event.returnValue=false;
l         DOM兼容的浏览器
oEvent.preventDefault();  //oEvent在DOM中就是事件对象
两者兼容的方法
 
document.body.oncontextmenu=functi


相关文档:

关于javascript 匿名函数的调用方式

今天看jQuery的时候发现的书写形式原来没有见过 如下:
(function(){
statement
...
})();
不理解,后来上网查了一下,原来是javascript匿名函数的调用方式
 http://zhidao.baidu.com/question/95789340.html
javascript 可以以下方式调用函数
声明
a = function(){};
调用
a();
可以理解为
(function(){ ......

javascript;拼图游戏(可自选图片和设置行列数)

思路:浏览图片,读取其宽度ImageW,高度值ImageH。读取用户输入的分成几行Row几列Col。
         每个方块:boxW=ImageW/Col;boxH=ImageH/Row;
         在1到Row*Col中随机,第i个图片的位置设为pos【i】。然后动态创建div生成Row* ......

10个非常棒的Ajax及Javascript实例资源网站

1.Ajax Rain
  AjaxRain有很多完美整合AJAX, CSS, DHTML 或 Javascript的实例,有一些Demo的确值得你去看一看,即使你不是网页设计(开发)师。
Ajax/Javascript实例:
 EXT JS Date Picker
 jQuery Feed Menu
 jGrowl
 FastFind Menu – Jquery
 Spiffy Accordion
2.Ajax Daddy ......

javascript操作Cookies

javascript操作Cookies方法集锦
function setCookie(name,value)
{
  var Days = 1; //此 cookie 将被保存 1 天
  var exp  = new Date();    //new Date("December 31, 9998");
  exp.setTime(exp.getTime() + Days*24*60*60*1000);
  document.cookie = name + ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号