本站业务范围:1、PC端软件开发、网站开发 2、移动端APP、网站、微信接口、微商城开发 3、视频教程、毕业设计辅导
 当前位置:文章中心 >> Jquery_Ajax_Javascript
立即购买视频教程 EcmaScript5中扩展了叫bind的方法
夜鹰教程网 来源:www.yyjcw.com 日期:2018/1/7 13:17:16
EcmaScript5中扩展了叫bind的方法

这篇文章不能解决你的问题?我们还有相关视频教程哦!

QQ:1416759661 新手QQ群:7835003  加Q远程协助!

在线解答|Demo制作|远程调试| 点击查看相关的视频教程

代码如下


 copy

  1. var aDiv=oDiv.getElementsByTagName("div");  

  2.     for(var i=0;i<aDiv.length;i++){  

  3.         aDiv[i].addEventListener("mouseover",change(),false);  

  4.     }  


问我为什么mouseover事件都没有触发,为什么直接执行了函数。我当时也蒙了一下,但是后来突然发现,addEventListener中的处理函数只需要放一个函数名就行了,这样写就以为这执行这个函数,因此,改写代码:



 copy

  1. function change(obj){  

  2.             obj.style.transform="scale(0)";  

  3.         }  

  4.               

  5.         var aDiv=oDiv.getElementsByTagName("div");  

  6.         for(var i=0;i<aDiv.length;i++){  

  7.             aDiv[i].addEventListener("mouseover",change,false);  

  8.         }  

但是现在问题又来了,我们需要一个参数,而一个函数名是没办法穿参数的,所以这个时候就要用到bind方法


在EcmaScript5中扩展了叫bind的方法(IE6,7,8不支持),可以绑定参数。bind可接受的参数都分为两部分,且第一个参数都是作为执行时函数上下文中的this的对象。

再次改写:

 copy

  1. var aDiv=oDiv.getElementsByTagName("div");  

  2.             for(var i=0;i<aDiv.length;i++){  

  3.                 aDiv[i].addEventListener("mouseover",change.bind(aDiv[i],aDiv[i]),false);  

  4.             }  

  5.               

  6.             function change(obj){  

  7.                 obj.style.transform="scale(0)";  

  8.             }  



搞定


复制链接 网友评论 收藏本文 关闭此页
上一条: 详细且实用的JS正则表达式大全  下一条: attachEvent和addEventListener的用法
  推荐教程/优惠活动

  热门服务/教程目录

  夜鹰教程网  新手必看,详细又全面。
  夜鹰教程网  购买教程  夜鹰教程网  在线支付-方便
  夜鹰教程网  担保交易-快捷安全   夜鹰教程网  闪电发货
  夜鹰教程网  电话和QQ随时可以联系我们。
  夜鹰教程网 不会的功能都可以找我们,按工作量收费。

客服电话:153 9760 0032

购买教程QQ:1416759661  
  热点推荐
ajax 清除缓存的两种方法
js日历控件点击日期显示在文本框中…
HTML、JS与FLASH 之间的静态传值方…
主题:ajax请求JSP,为什么GET就是…
javascript 改变iframe(框架)的方…
javascript取鼠标当前坐标
推荐一款网页软键盘 很漂亮的哦
ajax session过期问题的几个解决方…
js文字间隔停顿向上滚动效果
ajax 服务器文本框自动填值
js技术技巧收藏(200例)---1
ajax 数据库中随机读取5条数据动态…
主题:这是否是个捷径?Ajax利用S…
揭开AJAX神秘的面纱(AJAX个人学习…
常用的JS后台导航菜单
  尊贵服务
夜鹰教程网 承接业务:软件开发 网站开发 网页设计 .Net+C#+VS2008+MSsql+Jquery+ExtJs全套高清完整版视频教程
  最近更新
Web前端技术疑点难点汇总
Asp.Net Core2.0允许跨域请求设置…
XMLHttpRequest请求中的跨域问题
原生js节点的操作 创建、添加、移…
VUE2.0组件:父组件子组件之间值的…
JavaScript是世界上最流行的脚本语…
js正则表达式表单验证详解
js正则表达式大全
详细且实用的JS正则表达式大全
EcmaScript5中扩展了叫bind的方法…
attachEvent和addEventListener的…
addEventListener的使用方式
通过构造器的方式来创建函数
为什么需要addEventListener
javascript这门语言一直就像一位带…
  工具下载  需要远程协助? 

sql2008视频教程 c#视频教程

VIP服务:如果您的某个功能不会做,可以加我们QQ,给你做DEMO!

JQUERY  Asp.net教程

MVC视频教程  vs2012
.NET+sql开发
手机:15397600032 C#视频教程下载
vs2012 vs2008 vs2010 sql2008 sql2005
Asp.Net  

教程咨询QQ:1416759661


这篇文章不能解决你的问题?我们还有相关视频教程哦!

QQ:1416759661 新手QQ群:7835003  加Q远程协助!

在线解答|Demo制作|远程调试| 点击查看相关的视频教程

关于我们 | 购买教程 | 网站建设 | 技术辅导 | 常见问题 | 联系我们 | 友情链接

夜鹰教程网 版权所有 www.yyjcw.com All rights reserved 备案号:蜀ICP备08011740号3