- 浏览: 1596939 次
- 性别:
文章分类
- 全部博客 (2929)
- 非技术 (18)
- Eclipse (11)
- JAVA (31)
- 正则表达式 (0)
- J2EE (4)
- DOS命令 (2)
- WEB前端 (52)
- JavaScript (69)
- 数据库 (8)
- 设计模式 (0)
- JFreechart (1)
- 操作系统 (1)
- 互联网 (10)
- EasyMock (1)
- jQuery (5)
- Struts2 (12)
- Spring (24)
- 浏览器 (16)
- OGNL (1)
- WebService (12)
- OSGi (14)
- 软件 (10)
- Tomcat (2)
- Ext (3)
- SiteMesh (2)
- 开源软件 (2)
- Hibernate (2)
- Quartz (6)
- iBatis (2)
最新评论
一.事件冒泡与事件捕获
事件捕获:由外向内寻找事件源的过程。
事件冒泡:事件从事件源由内向外传播的过程。
二.指派事件监听者
1.在JavaScript中指定事件处理程序,动态指派
<p
id="inner">点击</p>
<script type="text/javascript">
function
tt(){
alert(this.id);
}
var inner=document.getElementById("inner");
inner.onclick=tt;
</script>
2.在XHTML标记的事件处理属性中指定,静态指派
<p id="inner" onclick="tt()">点击</p>
效果同如下JavaScript执行
var inner=document.getElementById("inner");
inner.onclick=function(){
tt();
};
两种方式的不同点如下图
所以动态指派返回inner,静态指派返回undefined
注意:事件处理程序的返回值可以影响事件的默认行为,默认行为是事件发生,返回一个false值可以取消事件的默认行为。
所以在静态指派时,添加<p id="inner" onclick="return tt()">点击</p>,才能返回正确的boolean值给onclick。
注意:== 内容相等 === 类型,内容都相等
3.现代事件处理程序指派方法
if(obj.attachEvent){
//ie式
obj.attachEvent("onclick",tt)
obj.detachEvent("onclick",tt)
}
else{
//dom式,第三个参数标识处理程序是用在捕获阶段(true),还是用在冒泡阶段(false)
obj.addEventListener("click",tt,false);
obj.removeEventListener("click",tt,false);
}
三.事件对象
if(window.event){
var event=window.event;//ie式
}
else{
var event=arguments[0];//dom式
}
注意:获取键盘键值和获取键盘输入值
keydown关注键值 keypress关注输入值
alert(this.id);
}
var inner=document.getElementById("inner");
inner.onclick=tt;
</script>
2.在XHTML标记的事件处理属性中指定,静态指派
<p id="inner" onclick="tt()">点击</p>
效果同如下JavaScript执行
var inner=document.getElementById("inner");
inner.onclick=function(){
tt();
};
两种方式的不同点如下图
所以动态指派返回inner,静态指派返回undefined
注意:事件处理程序的返回值可以影响事件的默认行为,默认行为是事件发生,返回一个false值可以取消事件的默认行为。
所以在静态指派时,添加<p id="inner" onclick="return tt()">点击</p>,才能返回正确的boolean值给onclick。
注意:== 内容相等 === 类型,内容都相等
3.现代事件处理程序指派方法
if(obj.attachEvent){
//ie式
obj.attachEvent("onclick",tt)
obj.detachEvent("onclick",tt)
}
else{
//dom式,第三个参数标识处理程序是用在捕获阶段(true),还是用在冒泡阶段(false)
obj.addEventListener("click",tt,false);
obj.removeEventListener("click",tt,false);
}
三.事件对象
if(window.event){
var event=window.event;//ie式
}
else{
var event=arguments[0];//dom式
}
注意:获取键盘键值和获取键盘输入值
keydown关注键值 keypress关注输入值
|
keyCode | charCode | |
IE | keydown | 键值 | 不支持 |
keypress | 输入值 | 不支持 | |
FF | keydown | 键值 | 0 |
keypress | 0 | 输入值 |
发表评论
-
Javascript评估用户输入密码的强度的方法 代码
2009-07-28 17:50 677用Javascript评估用户输入密码的强度密码已经是我们生活 ... -
图片和文字放一起,不能居中的解决方法
2009-07-29 14:47 921<td align="center" ... -
解开JavaScript生命的达芬奇密码
2009-08-05 17:56 712解开JavaScript生命的达芬奇密码 ——如何使用Jav ... -
掌控上传进度的AJAX Upload(转贴)
2009-08-05 17:59 688掌控上传进度的AJAX Uploa ... -
Javascript跨域访问解决方案
2009-08-11 20:11 619由于安全方面的考虑,Javascript被限制了跨域访问的能力 ... -
不唐突的JavaScript的七条准则(转载)
2009-08-12 13:18 609经过多年的开发、教学 ... -
浅谈Javascript中的事件流和事件绑定
2009-08-13 16:31 755事件流 浏览器中的事 ... -
JavaScript继承详解(二)
2009-08-17 17:04 595转自:http://www.cnblogs.com/sansh ... -
JavaScript继承详解(一)
2009-08-17 17:04 670转自:http://www.cnblogs.com/sansh ... -
javascript实用技巧--数组.
2009-08-17 17:08 633数组和字符串类型对象的方法我特容易搞混淆,所以把他列出来,免得 ... -
IE和Firefox之间的JavaScript差异
2009-08-17 17:18 564尽管 JavaScript 历史上使用冗长而令人生厌的代码块来 ... -
常见的JavaScript错误
2009-08-17 17:19 709作者: Richardy, 出处:IT ... -
JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度
2009-08-17 17:19 633网页可见区域宽:document.body.clientWid ... -
Javascript的Defer属性
2009-08-17 17:48 673Script中的Defer属性 ... -
最佳的"addEvent"是怎样诞生的
2009-08-18 13:47 616IE的 JScript 存在内存泄露的bug 想必大家都清楚或 ... -
值得推荐的事件捕获函数AddEvent()
2009-08-18 13:56 7421, 下面是JQuery之父推荐的添加移除事件方法。 ... -
随滚动条移动的层
2009-08-20 15:55 705<!DOCTYPE html PUBLIC &qu ... -
javascript 获取滚动条高度
2009-08-20 16:02 761/******************** * 取窗口滚动 ... -
如何去掉ie里面的关闭按钮,和屏蔽ALT+F4 (转载)
2009-09-01 17:46 758去掉关闭按钮可以使用无边框窗口设计,不过IE6中已经不支持了。 ... -
(window.onunload)只有点击浏览器右上角关闭按钮才执行
2009-09-01 18:31 829<html> <head> &l ...
相关推荐
详细的js事件模型,描述各类JS事件以及不同浏览器的兼容性问题。
ECMA-357,很不错的教程,和大家分享了,我花了好长时间找到的
一、原始事件模型 其事件类型:分为”输入事件(如onclicki)”和”语义事件(如onsubmit)” 事件程序的注册可以以下几种方式: 1、JS代码作为HTML性质值 复制代码 代码如下:<input type=”button” value=”Press me...
本文实例讲述了javascript事件模型的用法。分享给大家供大家参考。具体分析如下: 一、事件模型 冒泡型事件(Bubbling):事件由叶子节点沿祖先节点一直向上传递到根节点 捕获型事件(Capturing):由DOM树最顶元素...
javascript事件模型代码
智慧城市模型-threejs的模型文件
使用threejs渲染养殖场模型源码 Threejs渲染obj+mtl模型,Threejs加载3D模型 Threejs实现引入工厂模型,加载obj+mtl,可用于学习研究,二次开发
Three.js模型包,包含各种示例使用模型
1、函数指针进化论 2、Java事件模型 3、.NET(C#)事件模型 4、DOM和JavaScript事件模型 5、Flex和ActionScript3事件模型
javascript Event(事件模型),针对于javascript事件的处理,具有一些帮助。
目前点击物体让物体单独变色还有问题,其他的都是自己敲的,欢迎下载指导
JavaScript 一个最简单的事件模型,需要有事件绑定与触发,还有事件删除。 var eventModel = { list: {}, bind: function () { var args = [].slice.call(arguments), type = args[0], handlers = args.slice...
JavaScript对象模型
通过原生JavaScript实现一个简单的DOM事件模型,关于该资源的描述请参考:http://blog.csdn.net/gameloft9/article/details/51228191
threejs加载模型的几种方式,包括stl类型以及obj格式,附带案例。
学习JavaScript也需要了解它的运行平台,为了更好的理解JavaScript的事件模型,我打算从Node及浏览器引擎源码入手,分析其底层实现,并将我的分析整理为一系列博文;一方面作为笔记,另一方面也希望能与大家交流,...