js绑定事件this指向发生改变的问题解决方法


Posted in Javascript onApril 23, 2013

可对函数进行如下扩展

Function.prototype.bind = function(obj) { 
var _this = this; 
return function() { 
_this.apply(obj,arguments); 
} 
}

用法如下
var a = function(){ 
alert(this.title) 
}.bind(document); 
a();

常用在这儿
function myalert() { 
this.title = 'hello world'; 
this.init = function() { 
$("#xxx").click(this.close.bind(this)); 
} 
this.close = function() { 
alert(this.title) 
} 
}

<P style="PADDING-BOTTOM: 0px; LINE-HEIGHT: 22px; MARGIN-TOP: 0px; FONT-FAMILY: 微软雅黑, 宋体, 'Trebuchet MS', Tahoma, Arial, sans-serif; MARGIN-BOTTOM: 10px; COLOR: rgb(34,34,34); FONT-SIZE: 14px; PADDING-TOP: 0px" class=p1>var a  = new myalert();</P><P style="PADDING-BOTTOM: 0px; LINE-HEIGHT: 22px; MARGIN-TOP: 0px; FONT-FAMILY: 微软雅黑, 宋体, 'Trebuchet MS', Tahoma, Arial, sans-serif; MARGIN-BOTTOM: 10px; COLOR: rgb(34,34,34); FONT-SIZE: 14px; PADDING-TOP: 0px" class=p1>a.init();</P>
Javascript 相关文章推荐
使用Javascript简单实现图片无缝滚动
Dec 05 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
Mar 12 Javascript
JavaScript实现点击按钮直接打印
Jan 06 Javascript
JavaScript实现简单Tip提示框效果
Apr 20 Javascript
jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
Dec 05 Javascript
分享十三个最佳JavaScript数据网格库
Apr 07 Javascript
微信小程序 同步请求授权的详解
Aug 04 Javascript
详解Vue实战指南之依赖注入(provide/inject)
Nov 13 Javascript
深入浅析vue-cli@3.0 使用及配置说明
May 08 Javascript
webpack优化之代码分割与公共代码提取详解
Nov 22 Javascript
浅谈Vue2.4.0 $attrs与inheritAttrs的具体使用
Mar 08 Javascript
vue实现页面切换滑动效果
Jun 29 Javascript
js判断生效时间不得大于失效时间的思路及代码
Apr 23 #Javascript
修改file按钮的默认样式实现代码
Apr 23 #Javascript
js随机颜色代码的多种实现方式
Apr 23 #Javascript
js对象与打印对象分析比较
Apr 23 #Javascript
你必须知道的Javascript知识点之&quot;深入理解作用域链&quot;的介绍
Apr 23 #Javascript
你必须知道的Javascript知识点之&quot;字面量和对应类型&quot;说明介绍
Apr 23 #Javascript
你必须知道的Javascript知识点之&quot;单线程事件驱动&quot;的使用
Apr 23 #Javascript
You might like
PHP与javascript的两种交互方式
2006/10/09 PHP
有关 PHP 和 MySQL 时区的一点总结
2008/03/26 PHP
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
PHP中函数gzuncompress无法使用的解决方法
2017/03/02 PHP
PHP程序员学习使用Swoole的理由
2018/06/24 PHP
php使用event扩展的io复用测试的示例
2020/10/20 PHP
10个新的最有前途的JavaScript框架
2009/03/12 Javascript
jQuery对象和DOM对象相互转化
2009/04/24 Javascript
向大师们学习Javascript(视频与PPT)
2009/12/27 Javascript
Javascript的匿名函数小结
2009/12/31 Javascript
jQuery.autocomplete 支持中文输入(firefox)修正方法
2011/03/10 Javascript
JS不能跨域借助jquery获取IP地址的方法
2014/08/20 Javascript
javascript中replace( )方法的使用
2015/04/24 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
JS创建对象几种不同方法详解
2016/03/01 Javascript
vue2.0移除或更改的一些东西(移除index key)
2017/08/28 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
2017/12/19 Javascript
javascript实现简易聊天室
2019/07/12 Javascript
VSCode Vue开发推荐插件和VSCode快捷键(小结)
2020/08/08 Javascript
[01:32]TI奖金增速竟因它再创新高!DOTA2勇士令状不朽珍藏Ⅰ饰品欣赏
2018/05/18 DOTA
[01:04:09]DOTA2-DPC中国联赛 正赛 iG vs VG BO3 第二场 2月2日
2021/03/11 DOTA
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
python Django模板的使用方法
2016/01/14 Python
Django中Model的使用方法教程
2018/03/07 Python
python使用matplotlib绘制热图
2018/11/07 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
2013/01/31 HTML / CSS
凯特王妃父母建立的派对用品网站:Party Pieces
2017/05/28 全球购物
法律专业个人实习自我鉴定
2013/09/23 职场文书
宿舍打麻将检讨书
2014/01/24 职场文书
2014年五一活动策划方案
2014/03/15 职场文书
商场父亲节活动方案
2014/08/27 职场文书
超市创业计划书
2014/09/15 职场文书
作息时间调整通知
2015/04/22 职场文书
用php如何解决大文件分片上传问题
2021/07/07 PHP