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 中。

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

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

回调函数不起作用..为什么?!!?

4

4 回答 4

1
  • 一定要在#response已经进入 dom时执行 fadeOut
  • 确定#ranking存在
  • div你注射的有display: none(所以你看不到它)
于 2012-07-31T13:43:22.573 回答
1

因为你有这个

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

您正在将 html 更改为该 html,因此它不显示,因此您将看不到它

于 2012-07-31T13:46:02.407 回答
1

为什么添加属性 style="display:none"

替换代码

$("#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>');
于 2012-07-31T13:49:33.663 回答
0

请删除

style="display:none;" 

从您的代码中。它隐藏了您的 html。

在http://jsfiddle.net/XcPd5/工作演示。

于 2012-07-31T14:00:15.390 回答