<!--

作者:gentiana@163.com

时间:2016-3-10

描述:js事件处理

-->

<!DOCTYPE html>

<html>

<head>

<meta
charset="UTF-8">

<title>js事件处理</title>

</head>

<body>

<form
action="http://www.baidu.com"
method="post"
>

<button
id="btn">按钮123</button>

</form>

<script>

 

//添加事件

var addEvent =
function(
obj, type, fn )
{

if
(obj.addEventListener){

obj.addEventListener( type, fn,
false
);

}else
if
(obj.attachEvent)
{

obj["e"+type+fn]
= fn;

obj.attachEvent(
"on"+type,
function()
{

obj["e"+type+fn].call(obj, window.event);

}
);

}

};

 

var test =
function(e){

alert('Listener');

stopEvent(e);

}

var test2 =
function(){

alert('remove');

}

var btn = document.getElementById('btn');

addEvent(btn,
'click', test);

 

 

//移除事件

 

var removeEvent =
function(
obj, type, fn )
{

if
(obj.removeEventListener){

obj.removeEventListener( type, fn,
false
);

}

 

else
if
(obj.detachEvent)
{

obj.detachEvent(
"on"
+type, obj["e"+type+fn]
);

obj["e"+type+fn]
= null;

}

};

 

 

 

 

//阻止事件(包括冒泡和默认行为)

 

var stopEvent =
function(e){

e = e || window.event;

if(e.preventDefault)
{

e.preventDefault();

e.stopPropagation();

}else{

e.returnValue =
false;

e.cancelBubble =
true;

}

};

 

//仅阻止事件冒泡

 

var stopPropagation =
function(e)
{

e = e || window.event;

if
(e.preventDefault)
{

e.cancelBubble =
true;

}
else
{

e.stopPropagation();

}

};

 

 

//仅阻止浏览器默认行为

 

var preventDefault =
function(e)
{

e = e || window.event;

if(e.preventDefault)
{

e.preventDefault();

}else{

e.returnValue =
false;

}

}

 

//取得事件源对象

 

var getEventTarget =
function(e){

e = e || window.event;

var target = event.srcElement ? event.srcElement : event.target;

return target;

};

 

 

</script>

</body>

</html>

js事件处理-整理的更多相关文章

  1. 常用js方法整理common.js

    项目中常用js方法整理成了common.js var h = {}; h.get = function (url, data, ok, error) { $.ajax({ url: url, data ...

  2. js事件处理 —— 详解

    对于JS事件处理分为四部分: 1.html事件处理程序 直接添加到HTML结构中 解析:用html处理程序可以直接在button元素里直接调用,但是维护性不是很方便 <!DOCTYPE html ...

  3. 项目中常用js方法整理common.js

    抽空把项目中常用js方法整理成了common.js,都是网上搜集而来的,大家一起分享吧. var h = {}; h.get = function (url, data, ok, error) { $ ...

  4. JS知识点整理(二)

    前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...

  5. Vue.js事件处理

    Vue.js事件处理 1.v-on指令 用法如下:使用v-on:指令指定其执行的具体内容或者方法名即可. <button v-on:click='num++'>giao</butto ...

  6. 常用js代码整理、收集

    个人整理了一下个人常用到的一些js代码,以方便学习以及日后使用,或许有一些是个人之前从网上摘下来的,但是不记得是具体从哪里来的了,如果你看到有一段代码跟你的文章很相似甚至一样,请不要气愤,请告诉我,我 ...

  7. 工作中常用的JS函数整理分享(欢迎大家补充)

    今年在渣X工作整理的常用JS函数 今年来了渣X工作,我所在这个部门分工很奇怪,CSS竟然有专门的人在搞,开发PHP的人员需要处理JS,以至于有时候开发起来不是那么得心应手,感觉把JS和CSS拆开就像是 ...

  8. 常用js方法整理(个人)

    开头总要有点废话 今天想了下,还是分享下自己平时积累的一些实用性较高的js方法,供大家指点和评价.本想分篇介绍,发现有点画蛇添足.整理了下也没多少拿得出手的方法,自然有一些是网上看到的个人觉得很有实用 ...

  9. JS知识点整理(一)

    前言 本文把平时的一些读书笔记和理解进行了整理归纳,包含一些易混淆.遗漏的知识点,也会配上一些例子,可能不是很完整,还会有点杂,但也许会有你需要的(目前先整理了一部分,笔记有点多,后续会持续更新). ...

随机推荐

  1. 从头认识java-16.5 nio的数据转换

    这一章节我们来讨论一些nio的数据转换. 上面一章节我们提到ByteBuffer,可是他是面向二进制数据,对于编程来说不是非常方便,因此,java添加了转换数据的工具. 1.asCharBuffer ...

  2. ios开发之--ZHPickView输出格式不出现 +0000

    这样写就不会输出 +0000了 NSDate *select = [_datePicker date]; NSDateFormatter *dateFormatter = [[NSDateFormat ...

  3. php开n次方

    php有开平方函数 sqrt,但没开n次方的函数 网上用根据什么数字原理,可用次方(pow)弄开方,格式为:pow(number, 1/ 开方数) 例如: 4的开平方,可以写成 pow(4, 1/2) ...

  4. Hash表(hash table ,又名散列表)

    直接进去主题好了. 什么是哈希表? 哈希表(Hash table,也叫散列表),是根据key而直接进行访问的数据结构.也就是说,它通过把key映射到表中一个位置来访问记录,以加快查找的速度.这个映射函 ...

  5. React如何进行事件传参

    今天在学习React的es6语法的时候,发现了个有趣的现象,就是this的指向问题.es6的this不同于es5,它在创立函数伊始便已经存在了,而不是像es5一样,睡调用的函数,this指向谁.但是这 ...

  6. 当JS出现的Cannot read property 'XXX' of null错误

    由于在加载JS的时候,页面还未加载完成,就出现了这样的错误.解决方法很简单,将这段 js 放到页面的最下面,等到所以页面加载完成时,再加载这段JS.

  7. 如何偷懒地用 PHP 搭建一个班级网站

    版权声明:本文由李宜东原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/116 来源:腾云阁 https://www.qclo ...

  8. Sencha中Element的使用

    在sencha touch中如果你要是用模板来构造一些UI,那么你就必定要去操作Element,如下是我对Element的一些操作和遇到的问题 获取Elenent Ext.get("ID&q ...

  9. wampserver3 集成环境 启动Apache失败

    前提:安装完成后,原先是能够启动服务,但是按照网上教程修改conf文件后就不能启动Apache, 方法: 1.查看Apache错误日志(无奈的是看不懂) 2.在cmd命令行中查看,(打开cmd,输入: ...

  10. nginx 认证访问web

    htpasswd -c /usr/local/nginx/passwd.db huo nginx .conf文件添加↓: