2012-04-02 112 views
0

這是我的代碼:爲什麼我的回調函數jQuery slow()不起作用?

$(document).ready(function() { 
      posicionarBarraIdioma(); //This function aligns my div #barraIdioma at the bottom of the other div. 

      $('#barraProgreso').progressbar({ value: 1 }); 

      $('#barraIdioma').show('fast',animarBarraProgreso); 

     }); 

     function animarBarraProgreso() { 
      $('.ui-progressbar-value').animate({width: 100 + '%'},1250, mostrarIdiomas); 
     }  

     function mostrarIdiomas() { 
      $('#barraProgreso').fadeOut(function() { 
       $('#barraIdioma a').each(function(index, element){$(element).show()}) 
      }); 
     } 

我需要在div #barraIdioma放入位置,然後變得可見,然後動畫時...但是,當格顯示出來,動畫已經運行。我究竟做錯了什麼?


解決!我意外地在CSS上隱藏了進度條和其他div。

+0

它仍然動畫時,它不是在回調.show? – Fresheyeball 2012-04-03 03:12:37

+0

我試圖在顯示效果後使用延遲或setTimeout,但它始終是相同的結果。 我可以看到動畫的唯一方法不是隱藏div(而不是使用show) – schaable 2012-04-03 15:08:07

+0

你可以爲此製作一個js小提琴嗎? – Fresheyeball 2012-04-03 15:24:06

回答

1

我認爲你的JavaScript很好。我用你發佈的內容創建了一個JSFiddle,我相信它的行爲與你描述的一樣。也許問題在別處。你能發佈你的HTML嗎?

我發現的唯一錯誤是,你缺少的分號:

function mostrarIdiomas() { 
     $('#barraProgreso').fadeOut(function() { 
      $('#barraIdioma a').each(function(index, element) { 
       $(element).show(); //<-- missing semicolon here 
      }); //<-- missing semicolon here 
     }); 
    } 
+0

用我的完整代碼更新! – schaable 2012-04-03 15:01:11

相關問題