【发布时间】:2015-05-03 21:13:20
【问题描述】:
我的 html 包含两个相互重叠的表单,一个用作添加表单,一个用作编辑表单。我使用 jQuery 通过以下代码显示和隐藏它们:
var editForm = $("#edit-form");
var addForm = $("#add-form");
var showEditForm = function() {
editForm.fadeIn(function() {
addForm.fadeOut();
});
};
var showAddForm = function() {
editForm.fadeOut(function() {
addForm.fadeIn();
});
};
我想让代码更紧凑,所以我直接在 fadeOut() 回调上设置了 fadeOut() 调用,方法如下:
var showEditForm = function() {
editForm.fadeIn(addForm.fadeOut);
};
var showAddForm = function() {
editForm.fadeOut(addForm.fadeIn);
};
但这会产生以下错误Uncaught TypeError: Failed to execute 'animate' on 'Element': Valid arities are: [1], but 4 arguments provided.,但为什么不起作用?
【问题讨论】:
-
你必须提供一个函数,这样高阶函数fadeout才能触发它。这个答案的范围可以从单子到语法
标签: javascript jquery callback fadein fadeout