Mag*_*sso 2 javascript closures
我正在尝试以下方法:
f.addEventListener('submit',(function(frm){
var func = (function(e){somefunction(e,frm);})(e);
})(f),false);
Run Code Online (Sandbox Code Playgroud)
但这是失败的。我想将形式(f)作为静态引用和动态事件对象传递给命名函数'somefunction'。
我上面没有的工作,通过这两个正确的语法是什么?
问题在于,每个functions都会被立即调用,而undefined实际上会传递给addEventListener()。
你会想,而不是return在一个function•不用其调用括号因此事件以后可以称呼它:
f.addEventListener('submit', (function (frm) {
return function (e) {
someFunction(e, frm);
};
})(f), false);
Run Code Online (Sandbox Code Playgroud)
尽管使用事件绑定,您可能不一定需要关闭,因为<form>将会是传递的上下文(this)function:
f.addEventListener('submit', someFunction, false);
function someFunction(e) {
var frm = this;
// ...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
70 次 |
| 最近记录: |