Frage

Ich habe ein kleines Problem mit meinem jQuery-Skript.

<script language="javascript">
            $(document).ready(function(){
                $('.roll-li').click(function(){
                    if ($('.hideshow').is(":hidden")) {
                        $('.hideshow').slideDown("slow");
                    }
                    else {
                        $('.hideshow').slideUp("slow");
                    }
                });
            });
</script>

Wie Skript zu ändern, so div dass div mit der Klasse „Ausblendenanzeigen“, die ich slideing nach oben und unten, wird auf standardmäßig ausgeblendet werden?

War es hilfreich?

Lösung

In CSS

.hideshow { display: none; }

In jquery (keine Notwendigkeit für die Sichtbarkeit Überprüfung, nur verwenden slideToggle ()

$(".roll-li").click(function() {
    $(".hideshow").slideToggle("slow");
    return false;
});

(auch Ihre HTML in Erwägung ziehen IDs verwenden anstelle von Klassen, da diese über jquery zu finden, ist sehr effizient)

Andere Tipps

Sie brauchen nicht wirklich, dass im Skript zu tun. Sie legen sich lediglich style="display: none" auf dem div oder display: none für .hideshow zum CSS hinzuzufügen.

<script language="javascript">
        $(document).ready(function(){
            $('.hideshow').hide();
            $('.roll-li').click(function(){
                if ($('.hideshow').is(":hidden")) {
                    $('.hideshow').slideDown("slow");
                }
                else {
                    $('.hideshow').slideUp("slow");
                }
            });
        });
</script>

Fügen Sie einfach die Zeile:

$('.hideshow').hide();

Das ist, wenn ich Ihre Frage richtig verstanden werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top