JavaScript事件概览

JavaScript事件

JavaScript是单线程,在同一个时间点,不可能同时运行两个“控制线程”。

事件句柄和事件对象

1.注册事件句柄

标准和非标准

var button=documenbt.elementByID("#button");
button.addEventListener('click',function(){
    //do something.
},false);
//第三个参数表明事件是否阻止冒泡。true阻止冒泡,false类似默认行为一样进行事件冒泡。
var button=documenbt.elementByID("#button");
button.attachEvent('onclick',function(){
    //do something.
});

早期兼容性代码,查看浏览器支持哪种事件模型:

function registerEventHandler(node,event,handler){
            if(typeof node.addEventListener=='function'){
                node.addEventListener(node,event,handler);
            } else{
                node.attachEvent("on"+event,hander);
            }
        }
registerEventHandler(button,"click",function(){
            //to do
        });

2.获得事件对象

标准 event

非标准: window.event

兼容性代码:

registerEventHandler(document.body,"click",function(event){
            event=event||window.event;
            print(event.clientX,",",event.clientY);
        });

3.从事件对象中获取数据

鼠标事件,event对象中的属性(部分):

4.标记事件已经完成

function unregisterEventHandler(node,event,handler){
            if(typeof node.removeEventListener=='function'){
                node.removeEventListener(node,event,handler);
            } else{
                node.detachEvent("on"+event,hander);
            }
        }
registerEventHandler(button,"click",function(){
            //to do
        });

事件类型

1.鼠标事件, 2.键盘事件 3.停止行为 事件冒泡和阻止默认行为。标准和非标准如下:

阻止事件冒泡: event.stopPropagation

cancelBubble

阻止默认行为: event.preventDefault();

returnValue=false;

4.跟踪焦点事件 focusblur

5.表单事件 submit事件

6.window事件

load事件:在文档完全加载完毕时触发

resize事件: 每次窗口发生改变时被触发

scroll事件: 文档滚动的时候,浏览器都会触发window对象上的scroll事件

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏cnblogs

如何写好CSS系列之表单(form)

     表单模块可以分为两部分:一是表单的布局,也就是规范表单元素单元的排列位置;二是表单元素,如:输入框、单选、复选、列表组件、搜索组件等,由于列表组件、搜...

2629
来自专栏从零开始学自动化测试

Selenium2+python自动化65-js定位几种方法总结

前言 本篇总结了几种js常用的定位元素方法,并用js点击按钮,对input输入框输入文本 一、以下总结了5种js定位的方法 除了id是定位到的是单个elemen...

3387
来自专栏破晓之歌

JS 事件绑定、事件监听、事件委托详细介绍 转

在JavaScript的学习中,我们经常会遇到JavaScript的事件机制,例如,事件绑定、事件监听、事件委托(事件代理)等。这些名词是什么意思呢,有什么作用...

2833
来自专栏十月梦想

bootstrap表格

条纹表格.table-striped(作用在table的class类名),实现隔行换色

882
来自专栏十月梦想

jquery高级选择器第一部分

        上一篇简单的介绍了jquery的基础选择器,准备把高级选择器部分分为三篇博文介绍!慢工出细活吗,循序渐进相信jq会和css一样顺手,废话不少了接...

692
来自专栏DeveWork

解决Chrome或其它WebKit浏览器input和textarea的黄色/蓝色边框问题

之前在折腾主题的时候发现一个很怪的现象,在Chrome浏览器下,输入框有一个黄色的边框;而在其它WebKit浏览器(如Jeff使用的傲游浏览器)下,输入框的颜色...

2976
来自专栏CSDN技术头条

HTML基础知识总结

几个工具: IETester:多版本IE测试 Expression Web DreamWeaver 美工页面 XHTML:符合XML标准的HTML。 标签...

2675
来自专栏互联网杂技

接上一篇事件详解

事件类型: DOM3级事件规定了以下几类事件;如下: UI事件: 当用户与页面上的元素交互时触发; load事件:当页面加载完后(包括所有图像,所有javasc...

3696
来自专栏编程

前端学习自学笔记:day01

在这里要跟大家说声抱歉,本人拖更太久啦.现在在自学前端,我每天会把自己的总结笔记发上来分享给大家,希望对大家有帮助. 在此之前先为大家显示下前端工程师的路线图:...

2135
来自专栏Java帮帮-微信公众号-技术文章全总结

与Ajax同样重要的jQuery(2)

练习9: ² 点击button 打印radio checkbox select 中选中项的值 <script type="text/javascript" sr...

3155

扫码关注云+社区

领取腾讯云代金券