jquery fadein, fadeout no funciona

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

El problema es que tan pronto como el elemento desaparece, no agrega el elemento div al div de clasificación.

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

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

la función de devolución de llamada no funciona ... ¿por qué?

preguntado el 31 de julio de 12 a las 14:07

4 Respuestas

  • asegúrese de ejecutar el fadeOut cuando #response ya está en el dom
  • estar seguro #ranking existe
  • el div te estás inyectando tiene display: none (para que no puedas verlo)

Respondido 31 Jul 12, 15:07

Sus 4 puntos fallaron. todos los divs existen... No los agrego dinámicamente... append no hace ningún cambio - Dmitri Makovetskiyd

maldita sea... sé cuál era el problema... era el atributo de visualización, establecido accidentalmente en ninguno... por lo tanto, no apareció - Dmitri Makovetskiyd

@DmitryMakovetskiyd, ¿obtengo la marca de verificación desde que fui el primero? Huangismo

@DmitryMakovetskiyd esta no es mi respuesta - Huangismo

porque tienes esto

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

Está cambiando el html a eso, por lo que no muestra ninguno y, por lo tanto, no lo verá.

Respondido 31 Jul 12, 14:07

Por qué ha agregado la propiedad style="display:none"

Reemplazar el código

$("#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>');

Respondido 31 Jul 12, 14:07

Por favor eliminar

style="display:none;" 

de su código. Está ocultando su html.

Demostración de trabajo en http://jsfiddle.net/XcPd5/.

Respondido 31 Jul 12, 15:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.