Tag: jquery callback

将回调添加到jQuery DatePicker的正确方法

DatePicker有一个内部函数_adjustDate() ,我想在之后添加一个回调函数。 现行方法 这就是我目前正在做的事情。 基本上,只需用自身替换function定义,再加上新操作。 这会影响所有日期选择器,我也不确定是否也需要。 $(function(){ var old = $.datepicker._adjustdate; $.datepicker._adjustDate = function(){ old.apply(this, arguments); // custom callback here console.log(‘callback’); }; }); _adjustDate是在下一个/上个月点击期间调用的内容。 该函数有三个参数。 我很好奇是否有更好的方法来添加回调。 预期结果 我希望最终结果看起来像这样; 其中afterAjustDate是回调句柄: $(‘#datepicker’).datepicker({ showButtonPanel: true , afterAdjustDate: function(){ $(this).find(‘foo’).addClass(‘bar’); } }); FYI onChangeMonthYear不是可接受的事件替代, live() / delegate() (在IE中不起作用)绑定选项也不是。 这来自于选择月份后应用类/操作元素的需要。 更改月份会重新创建日历中的元素; 执行此操作时,jQueryUI不够智能,无法inheritance类更改。 因此,我需要在更改日期后进行回调。

如何在没有堆叠回调的情况下在jQuery中制作动画?

假设我有三个div,并且我希望每个div都完成前一个动画。 目前,我写这个: $(‘div1’).fadeOut(‘slow’, function() { $(‘div2’).fadeOut(‘slow’, function() { $(‘div3’).fadeOut(‘slow’); }); }); 这是丑陋的,但可管理。 现在想象一下,我有10种不同的动画需要在不同的元素上一个接一个地发生。 突然间,代码变得如此笨重,以至于管理起来非常困难…… 这是我想要做的伪代码: $(‘div1’).fadeOut(‘slow’ { delay_next_function_until_done: true } ); $(‘div2’).fadeOut(‘slow’ { delay_next_function_until_done: true } ); $(‘div3’).animate({ top: 500 }, 1000 ); 我该如何实现这一目标?

for循环中的闭包 – 循环变量作为参数的回调

我在循环中使用jQuery“GET”从服务器获取几个结果。 我想将循环索引作为固定参数包含在回调中,但它不起作用。 (我遵循了本文关于如何做的建议。) 但是,我在回调中得到的值完全不是我所期望的 – 而不是每个循环索引值,它总是等于索引的退出值。 即。 这里的代码片段为每次回调执行打印出’16’。 如何让它打印1,2,3 …(我意识到订单可能不同,那很好) 除了下面的代码,我还尝试了几种方法来指定回调函数,例如。 function(data, textStatus) { return test(data, textStatus, idx); }, ‘text’); 等等 这应该怎么样? function test(data, textStatus, siteNo) { console.log(“siteNo=” + siteNo); } function loadConfigLists() { var siteReport; // retrieve site configuration jQuery.get(“svGetSiteConfig.php”, function(data, textStatus) { // retrieve port configuration for all sites for (var idx=1; idx<=15; […]