javascript委托(Delegate)blur和focus用法实例分析


Posted in Javascript onMay 26, 2015

本文实例讲述了javascript委托(Delegate)blur和focus用法。分享给大家供大家参考。具体分析如下:

Opera (9.5b) 对于所有的focus和blur事件,不能正确的触发两次;
因此,focus和blur事件的处理函数可以被委派到事件的捕获阶段。

例子1(列表类):

<ol id="列表">

  <li><a href="#">列表项1</a>

    <ol>

      <li><a href="#">列表项1.1</a></li>

      <li><a href="#">列表项1.2</a></li>

      <li><a href="#">列表项1.3</a></li>

    </ol>

  </li>

  其他列表项

</ol>

例子2(表单类):

<form id="表单">

  <input type="text" id="文本框" />

  其他表单项

</form>

这里我们监听的是最外层的ol区块,如果我们用blur和focus事件,只是针对的是这整个的ol的,那么里面控件的focus和blur事件怎么处理呢?

处理方式如下:

IE处理:

$('列表').onmouseover = handleMouseOver;

$('列表').onmouseout = handleMouseOut;

$('列表').onfocusin = handleMouseOver;

$('列表').onfocusout = handleMouseOut;

也可以写成下面的形式:

$('列表').attachEvent('onfocusout',handleMouseOut,true);

如果想要传递参数,可以加个中间函数,例如

$('列表').attachEvent('onfocusout',function(event, myparams){handleMouseOut(event, myparams);},true);

FF处理:

$('列表').addEventListener('focus',handleMouseOver,true);

$('列表').addEventListener('blur',handleMouseOut,true);

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
调试Javascript代码(浏览器F12及VS中debugger关键字)
Jan 25 Javascript
JS不间断向上滚动效果代码
Dec 25 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
Aug 01 Javascript
微信小程序商品到详情的实现
Jun 27 Javascript
JS实现数组去重方法总结(六种方法)
Jul 14 Javascript
js的函数的按值传递参数(实例讲解)
Nov 16 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
Mar 07 Javascript
学习使用ExpressJS 4.0中的新Router的用法
Nov 06 Javascript
微信小程序实现的picker多级联动功能示例
May 23 Javascript
Vuex modules模式下mapState/mapMutations的操作实例
Oct 17 Javascript
JS Generator 函数的含义与用法实例总结
Apr 08 Javascript
javascript删除元素节点removeChild()用法实例
May 26 #Javascript
JavaScript事件委托实例分析
May 26 #Javascript
JQuery选择器、过滤器大整理
May 26 #Javascript
javascript字符串与数组转换汇总
May 26 #Javascript
javascript获取文档坐标和视口坐标
May 26 #Javascript
浅谈javascript事件取消和阻止冒泡
May 26 #Javascript
javascript事件冒泡和事件捕获详解
May 26 #Javascript
You might like
PHP中用正则表达式清除字符串的空白
2011/01/17 PHP
PHP与javascript实现变量交互的示例代码
2013/07/23 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
2015/09/23 PHP
Zend Framework实现多服务器共享SESSION数据的方法
2016/03/22 PHP
PHP缓存工具XCache安装与使用方法详解
2018/04/09 PHP
Thinkphp整合阿里云OSS图片上传实例代码
2019/04/28 PHP
浅谈php常用的7大框架的优缺点
2020/07/20 PHP
关于js获取radio和select的属性并控制的代码
2011/05/12 Javascript
js实现点击每个li节点,都弹出其文本值及修改
2016/12/15 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
jQuery实现的弹幕效果完整实例
2017/09/06 jQuery
微信小程序picker组件下拉框选择input输入框的实例
2017/09/20 Javascript
使用mpvue搭建一个初始小程序及项目配置方法
2018/12/03 Javascript
react项目如何使用iconfont的方法步骤
2019/03/13 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
vue(2.x,3.0)配置跨域代理
2019/11/27 Javascript
js实现视图和数据双向绑定的方法分析
2020/02/05 Javascript
详解Python中with语句的用法
2015/04/15 Python
Python简单格式化时间的方法【strftime函数】
2016/09/18 Python
Python爬虫使用脚本登录Github并查看信息
2018/07/16 Python
python中copy()与deepcopy()的区别小结
2018/08/03 Python
详解python列表(list)的使用技巧及高级操作
2019/08/15 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
澳大利亚先进的皮肤和激光诊所购物网站:Soho Skincare
2018/10/15 全球购物
医科大学生的自我评价
2013/12/04 职场文书
机械专业应届生求职信
2013/12/12 职场文书
运动会解说词50字
2014/01/18 职场文书
预备党员2014全国两会学习心得体会
2014/03/10 职场文书
委托公证书
2014/04/08 职场文书
《火烧云》教学反思
2014/04/12 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
合伙开公司协议书范本
2014/10/28 职场文书
明确岗位职责
2015/02/14 职场文书
导游词之白茶谷九龙峡
2019/10/23 职场文书