在javascript/jquery中使用$.proxy命令
Using the $.proxy command in javascript/jquery
我有一段代码有点外来语法:
$.widget('ui.filterFieldDisplay', $.ui.fieldDisplay, {
setFoo: function() {
.
.
.
// added the next two lines
var fooFieldWidgetOptions = fooFieldOptions.widgetOptions;
fooFieldWidgetOptions['default'] = operator;
var fooChangeProxy = $.proxy(this.fooChange, this);
fooFieldWidgetOptions.changeCallback = fooChangeProxy;
}
fooChange: function(fooModel) {
fooModel.getValue('bar');
.
.
.
}
});
在这种情况下,fooModel
是否引用了this
指针?
我知道$.proxy
方法将this
指针绑定到函数,以便它在该上下文中操作。但我知道this
并没有被引用到fooModel
。所以我的问题是:什么是fooModel
,它从哪里来?
否,fooModel
将作为第一个参数传递给fooFieldWidgetOptions.changeCallback
fooFieldWidgetOptions.changeCallback("helloWorld!"); // fooModel will be `helloWorld!`
$.proxy()
所做的只是确保fooChange
内部的this
与setFoo
内部的this
相同
相关文章:
- 当我点击jsf中的primefaces命令按钮时,如何获得点击事件
- 如何使用Socket.io将命令从客户端发送到服务器
- 通过命令行/批处理文件打开页面时,将javascript代码注入Google Chrome
- 命令行中的Uglify js;不要弄乱变量名
- http.listen()在运行时接受终端命令
- 如何在没有单词的情况下从命令行运行Node.js程序'节点'
- 如何将给定的curl命令复制为jquery ajax请求
- 打开抽屉的Javascript打印命令
- Web控制台命令不起作用
- 如何使用脚本在jsf中执行命令按钮的自动点击
- 类似HTML命令行的文本框
- 命令“;节点"做
- 节点JS express和控制台输出到命令行与浏览器
- 如何将.json文件作为参数导入.js文件并使用命令行启动它
- 编辑弹出窗口的HTML的单击命令
- 为什么我的关键命令不起作用
- Javascript不能在一个命令中使用函数参数
- 最小化CSS/JS文件,并使用命令行创建一个文件
- 在Flask中使用.getJSON请求时,只运行一次命令
- 在javascript/jquery中使用$.proxy命令