如何将jQuery函数作为另一个函数传递'的论点
How to pass jQuery function as another function's argument?
我想创建一个函数,它将一个函数作为参数(另一个函数),并返回将应用于第一个函数的函数参数。
这是一个单一的想法:
function creator(fun) {
return function (arg) {
fun(arg);
};
}
$(function () {
var printer = creator(alert);
printer("foo bar");
})
问题是,我无法用谷歌搜索或找出如何用jQuery函数做同样的事情:
function show_and_change(fun) {
return function (el, attr, value) {
console.log(el.fun(attr)
el.fun(attr, value);
}
}
$(function () {
var my_mod = show_and_change($.fn.attr);
my_mod($("#one"), "foo", "bar2");
})
el.fun
将实际尝试访问el
上的属性fun
(该属性不存在)。相反,您希望调用fun
(就像您在第一个示例中所做的那样),但也将其this
值设置为jQuery对象:
fun.call(el, attr, value);
了解有关.call
和.apply
的更多信息。
相关文章:
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 在另一个函数中使用变量this
- 在另一个函数成功结束后调用该函数
- 多次调用另一个javascript函数中的javascript函数
- 使用JS函数来使用另一个函数的语法?node.js
- 嵌套到另一个函数中的Fancybox函数;不起作用
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- javascript函数将数据添加到屏幕,但随后被另一个函数覆盖
- 另一个Ajax函数触发的Ajax函数不起作用
- 如何从另一个处理程序内部取消JavaScript事件处理程序函数的执行
- 如何在不预定义的情况下将javascript函数传递到另一个函数中
- 从另一个函数获得$this值
- 如何记录调用另一个函数的函数的返回值
- 它在另一个函数中嵌套后不会输出文本
- 如何将自动完成的值传递到另一个函数中
- 将一个函数作为参数传递给javascript中的另一个函数
- 同一事物的两个函数,一个崩溃,另一个不崩溃,为什么
- 从另一个函数延迟解析的返回
- 多次调用promise函数,直到另一个promise函数满足条件