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 相关文章推荐
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
Dec 29 Javascript
js自定义事件及事件交互原理概述(一)
Feb 01 Javascript
js模仿java的Map集合详解
Jan 06 Javascript
用js动态添加html元素,以及属性的简单实例
Jul 19 Javascript
AngularJs ng-route路由详解及实例代码
Sep 14 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
Feb 10 Javascript
node安装--linux下的快速安装教程
Mar 21 Javascript
微信小程序 自定义Toast实例代码
Jun 12 Javascript
你有必要知道的10个JavaScript难点
Jul 25 Javascript
js事件on动态绑定数据,绑定多个事件的方法
Sep 15 Javascript
webpack配置proxyTable时pathRewrite无效的解决方法
Dec 13 Javascript
微信小程序如何实现在线客服功能
Oct 16 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
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
PHP实现仿Google分页效果的分页函数
2015/07/29 PHP
PHP Filter过滤器全面解析
2016/08/09 PHP
PHP的Trait机制原理与用法分析
2019/10/18 PHP
在Laravel 中实现是否关注的示例
2019/10/22 PHP
js异或加解密效果代码
2008/06/25 Javascript
为javascript添加String.Format方法
2020/08/11 Javascript
javascript 设置文本框中焦点的位置
2009/11/20 Javascript
图片无缝滚动代码(向左/向下/向上)
2013/04/10 Javascript
js键盘上下左右键怎么触发function(实例讲解)
2013/12/14 Javascript
nodejs实现的一个简单聊天室功能分享
2014/12/06 NodeJs
Bootstrap树形控件使用方法详解
2016/01/27 Javascript
BootStrap的table表头固定tbody滚动的实例代码
2016/08/24 Javascript
js判断所有表单项不为空则提交表单的实现方法
2016/09/09 Javascript
js实现日期显示的一些操作(实例讲解)
2017/07/27 Javascript
Vue中Axios从远程/后台读取数据
2019/01/21 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
Python+微信接口实现运维报警
2016/08/27 Python
Python中生成器和迭代器的区别详解
2018/02/10 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
Scrapy框架使用的基本知识
2018/10/21 Python
基于Python在MacOS上安装robotframework-ride
2018/12/28 Python
python在openstreetmap地图上绘制路线图的实现
2019/07/11 Python
python连接打印机实现打印文档、图片、pdf文件等功能
2020/02/07 Python
基于打开pycharm有带图片md文件卡死问题的解决
2020/04/24 Python
详解CSS3原生支持div铺满浏览器的方法
2018/08/30 HTML / CSS
程序设计HTML5 Canvas API
2013/04/08 HTML / CSS
大学生创业计划书的范文
2014/01/07 职场文书
在宿舍喝酒的检讨书
2014/09/28 职场文书
幼儿园教师教育随笔
2015/08/14 职场文书
初三数学教学反思
2016/02/17 职场文书
nginx里的rewrite跳转的实现
2021/03/31 Servers
Python爬虫实战之爬取携程评论
2021/06/02 Python
Javascript中Microtask和Macrotask鲜为人知的知识点
2022/04/02 Javascript