jQuery - Ungewollte Verzögerung bei .hide() durch .hover

  • Hallo zusammen! Ich habe mir ein eigenes Dropdown Skript gebastelt. Es sind drei nebeneinander liegende Icons und jeweils deren Dropdown Menü.

    Im 1. Code die Details dazu was was ist.


    1. Icon:


    2. Icon:


    3. Icon:


    Im Anhang noch Screens.

    Mein Problem: Bei hover über das nächste Icon sollen sofort (!) die Dropdowns der anderen Menüs ausgeblendet werden. Passiert aber nicht. Es gibt teils starke Verzögerungen. Solange ich gemütlich über die Icons gehe ist alles gut. Sollte ein User aber schnell mal drüber wischen gibt es erst einmal alle drei Dropdowns die dann erst nach und nach verschwinden. Klar nur Sekündchen, max., aber schön ist das nicht.


    Hatte es auch mit .stop() und danach .hide() versucht. Aber das bringt keine Beschleunigung sondern nur noch mehr Unruhe.

  • Wie währen es hier mit? ohne Javascript

    *** Link entfernt, weil nicht mehr erreichbar ***


    Ging nicht schöner auf der schnelle . Aber solange du das nicht liest, arbeite ich noch dran:)


    EDIT so habe es noch etwas verschönert . das ein und ausblenden kannst du in den keyframes ja einstellen wie schnell es sein soll

  • Danke dir für deine Mühe! Hatte nur gehofft, dass vielleicht eine Rückmeldung zur jQuery kommt und deswegen noch gewartet.

    Der ganze HTML Brocken hilft dir nicht viel. An sich hast es richtig verstanden. Dropdowns die mit CSS gestaltet aber erstmal ausgeblendet sind. Icons ohne direkte Funktion. jQuery übernimmt den Rest.


    Deine CSS Lösung müsste ich mir mir in Ruhe mal durchschauen und überlegen, ob und wie ich das bei mir einbringen kann.


    Nur eine Frage: was ist das?

    Code
    @keyframes los1{
      0% {
        opacity:1;
      }
      100%{
        opacity:0;
      }
    }


    Bzw. was es tut ist klar. Aber da ich kein freies CSS hab, sondern an einer Software-Oberfläche mit Element Zuweisung kratze fehlt mir die Zuordnung.
    "Unfreie" Software-Arbeit ist Fluch und Segen zugleich. Siehe Anhang.
    Also natürlich kann ich CSS Regeln hinzufügen und bearbeiten. So werde ich auch "a:focus + .submenu_list" problemlos als neue Regel hinzufügen können.

  • der@keyframe blendet das menü ein und aus .Ich sage mal das simuliert dein fadeIn() und fadeOut() was du mit jquery gemacht hast macht jetzt so das css.


    Was meinst du mit element zuweisung ?inline styls? Du kannst keyframes auch mit javascript einbinden,fals du keine css datei verwenden kannst

  • Ja das ist klar. Sorry schlecht ausgedrückt.

    Also ist der @keyframe ein eigenes Element? Frage klingt schön blöd... Mir geht es nur darum ob ich es einem Element zuweisen soll/kann oder neu Anlegen und referenzieren muss. Wie dann auch immer.

    Mit der CSS Datei bringst mich auf eine Idee. Gibt sicher eine Backdoor um CSS einzubinden ohne die Softwareoberfläche zum layouten zu nutzen... hmmm.

  • @keyframe ist kein element ,das ist keine ahnung was aber kein element .ist eigentlich ein style anweising oder so. Du kannst es elementen zuweisen das bestimmte elemente das machen sollen was da drinne steht. Wie das jetzt genau nennt was das ist weiß ich auch nicht

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!