2012-07-31 154 views
0
   <div id="ranking"> 
            <div id="ranking_wrapper"> 
             <h5>Select site ranking</h5> 
             <img src="images/star.png" width="23" height="23" alt="" border="0"> 
             <input type="hidden" name="sitename" value="webcamking"> 
             <input type="radio" name="rank" value="1">1 
             <input type="radio" name="rank" value="2">2 
             <input type="radio" name="rank" value="3" checked="checked">3 
             <input type="radio" name="rank" value="4">4 
             <input type="radio" name="rank" value="5">5 
             <img src="/images/star.png" width="23" height="23" alt="" border="0"> 
             <p><input type="submit" value="Rank This Site" id="rank_submit"></p> 
            </div> 

            <div id="response" style="display:none;" > 
             <h5>Loading...</h5> 
             <img src='images/ajax_loader.gif' class='img_center'/> 
            </div> 
             </div> 
          <script> 
             $("#rank_submit").click(function(){ 

              $("#ranking_wrapper").fadeOut(0); 
              $("#response").fadeIn('slow'); 
              $("#response").fadeOut('slow',function(){ 

               $("#ranking").html('<div id="response" style="display:none;"> Thanks you for ranking webca.</div>'); 
              }); 

             }); 
          </script> 

問題是,在元素淡出後,它不會將div元素添加到排名div。jquery fadein,fadeout不工作

  $("#response").fadeOut('slow',function(){ 

               $("#ranking").html('<div id="response" style="display:none;"> Thanks you for ranking webca.</div>'); 
              }); 

回調函數不工作..爲什麼?!!?

回答

1
  • 一定要執行淡出時#response已經到DOM
  • 一定#ranking存在
  • div你注射有display: none(所以你不能看到它)
+0

你所有的4點都失敗了。所有的divs存在..我不加入他們動態..附加不會做出改變 – 2012-07-31 13:45:32

+0

dammit ..我知道是什麼問題..它是顯示屬性,意外設置爲無..因此它沒有出現 – 2012-07-31 13:47:01

+0

@DmitryMakovetskiyd所以自從我第一次得到複選標記 – Huangism 2012-07-31 14:11:55

1

因爲你有這個

<div id="response" style="display:none;"> 

你正在改變HTML到這一點,所以它是沒有顯示,所以你不會看到它

1

爲什麼你必須添加屬性風格=「顯示:無」

代碼替換

$("#ranking").html('<div id="response" style="display:none;"> Thanks you for ranking webca.</div>'); 


$("#ranking").html('<div id="response"> Thanks you for ranking webca.</div>');