Jquery 用于切换的回调函数,似乎在切换完成之前执行

Jquery 用于切换的回调函数,似乎在切换完成之前执行,jquery,html,Jquery,Html,我正在为我的切换执行回调,它似乎在切换完成之前执行。我能做些什么来防止这种情况吗?或者如果 jsfiddle: 编辑: 我有点需要关闭Show and Hide(显示和隐藏),我是否可以实现一个回调函数,而不创建一个新函数来监听切换?您是在绑定对函数的调用,而不是函数本身。改为: .toggle(!this.checked, callBack); //no parentheses 编辑:实际上还有另一个问题;当接受布尔参数时,该方法不会以这种方式工作。相反,请删除第一个参数,如果出现以下情况,

我正在为我的
切换
执行回调,它似乎在
切换
完成之前执行。我能做些什么来防止这种情况吗?或者如果

jsfiddle:

编辑:

我有点需要关闭Show and Hide(显示和隐藏),我是否可以实现一个
回调函数
,而不创建一个新函数来监听切换?

您是在绑定对函数的调用,而不是函数本身。改为:

.toggle(!this.checked, callBack); //no parentheses
编辑:实际上还有另一个问题;当接受
布尔
参数时,该方法不会以这种方式工作。相反,请删除第一个参数,如果出现以下情况,请反转


您将调用绑定到函数而不是函数本身。改为:

.toggle(!this.checked, callBack); //no parentheses
编辑:实际上还有另一个问题;当接受
布尔
参数时,该方法不会以这种方式工作。相反,请删除第一个参数,如果出现以下情况,请反转

像这样使用它:

$('#toggle_now').change(function () {
    $('#show_me').toggle(!this.checked, callBack);
}).change();
像这样使用它:

$('#toggle_now').change(function () {
    $('#show_me').toggle(!this.checked, callBack);
}).change();
首先,当使用切换中的“显示隐藏”选项时,它没有回调

您需要一个持续时间,因为这是切换函数异步的唯一时间:

$('#toggle_now').on('change', function () {
    $('#show_me').toggle(this.checked);
    $('#span_me').html($('#show_me').is(':visible') ?  'visible' : 'hidden');
}).change();​
不需要回调,因为
html()
函数直到
toggle()
函数完成后才会执行

首先,当使用“切换”中的“显示隐藏”选项时,它没有回调

您需要一个持续时间,因为这是切换函数异步的唯一时间:

$('#toggle_now').on('change', function () {
    $('#show_me').toggle(this.checked);
    $('#span_me').html($('#show_me').is(':visible') ?  'visible' : 'hidden');
}).change();​
不需要回调,因为
html()
函数直到
toggle()
函数完成后才会执行


如果我这样做,那么它根本不会引用函数如果我这样做,那么它根本不会引用函数伟大的答案,我编辑了我的问题一点,我想保留
显示和隐藏
伟大的答案,我编辑了我的问题一点,我想保留
显示和隐藏