我使用了slideDown動畫顯示在新增加的錶行一些div:動畫之前稱爲JQuery的動畫回調結束
$("div", newRow).slideDown(10000, UpdateHours(response.d.Hours));
但是UpdateHours()函數被調用的div完成動畫很久以前。這是我造成的一個問題,因爲更新小時數然後被滑動div覆蓋。
爲了更好地說明問題,我製作了非常慢的幻燈片。
我使用了slideDown動畫顯示在新增加的錶行一些div:動畫之前稱爲JQuery的動畫回調結束
$("div", newRow).slideDown(10000, UpdateHours(response.d.Hours));
但是UpdateHours()函數被調用的div完成動畫很久以前。這是我造成的一個問題,因爲更新小時數然後被滑動div覆蓋。
爲了更好地說明問題,我製作了非常慢的幻燈片。
我認爲它試圖通過調用UpdateHours(response.d.Hours)作爲回調函數的結果,這可以解釋爲什麼它會很快被調用。一種解決方案是創建一個調用UpdateHours的匿名函數。
$("div", newRow).slideDown(10000, function() { UpdateHours(response.d.Hours) });
有一個在jQuery網站上以這種方式調用slideDown的示例。 http://docs.jquery.com/Effects/slideDown
我想你想要這樣的:
$("div", newRow).slideDown(10000, function() { UpdateHours(response.d.Hours); });
這將創建一個匿名函數將被稱爲回調 - 你正在做的是設置回調是UpdateHours
太好了,謝謝! – 2008-12-03 09:42:48