CSS-Stile html,Text{ Breite: 100 %; Höhe: 100%; Rand: 0; Polsterung: 0; } /*Navigationssymbol*/ .NMH-g-navicon{ Position: fest; oben: 40%; rechts: 020px; Breite: 100px; Höhe: 100px; } .NMH-g-navicon.Jnmh-onleft{ rechts: auto; links: 020px; } /*Navigationssymbol-Logo-Schaltfläche*/ .NMH-g-navicon .Jnmh-btnlogo{ Position: absolut; Anzeige: Block; Breite: 100px; Höhe: 100px; oben: 50 %; rechts: 0; Rand oben: -50px; Rand: 0; Hintergrund: URL (Bild/Icon_128.png) keine Wiederholung, Mitte, Mitte; Hintergrundgröße: 95 % 95 %; Rand: 1px durchgezogen rgba(0, 0, 0, 0,1); Box-Schatten: rgba(0, 0, 0, 0,12) 0px 6px 10px 0px; Gliederung: keine; Randradius: 50 %; Z-Index: 1; } .NMH-g-navicon .Jnmh-btnlogohover{ Position: absolut; Anzeige: Block; Breite: 100px; Höhe: 100px; oben: 50 %; rechts: 0; Rand: 0; Polsterung: 0; Rand oben: -50px; Rand: 0; Überlauf: versteckt; /*Hintergrundfarbe: rot;*/ } /*Navigationssymbol-Logo-Schaltfläche – Maus darüber bewegen*/ .NMH-g-navicon.Jnmh-öffnen .Jnmh-btnlogohover{ Rand oben: -150px; Breite: 200px; Höhe: 300px; Rahmenradius: 150px 0 0 150px; } .NMH-g-navicon.Jnmh-onleft .Jnmh-btnlogohover{ links: 0; rechts: auto; Rahmenradius: 0 150px 150px 0; } /*Untercontainer für Navigationssymbolmenü*/ .NMH-g-navicon .Jnmh-m-submenu{ Position: absolut; Hintergrundfarbe: transparent; Listenstil: keiner; oben: -020px; unten: -020px; links: -020px; rechts: -020px; Rand: 0; Polsterung: 0; } .NMH-g-navicon .Jnmh-m-Untermenü .Jnmh-subli{ Position: absolut; Breite: 100 %; Höhe: 100 %; transformieren: drehen (0 Grad); -webkit-transform: drehen(0 Grad); Übergang: alle 0,8 s Ein- und Ausfahren; } .Jnmh-m-Untermenü .Jnmh-subdl{ Position: absolut; links: 50%; unten: 100 %; Breite: 0; Höhe: 0; Zeilenhöhe: 1px; Rand links: 0; Hintergrund: #fff; Randradius: 50 %; Textausrichtung: zentriert; Schriftgröße: 1px; Überlauf: versteckt; Cursor: Zeiger; Kastenschatten: keiner; Übergang: alles 0,8 s Ein-Aus, Farbe 0,1 s, Hintergrund 0,1 s; } /*Navigationssymbol – beim Erweitern des Menüs*/ .NMH-g-navicon.Jnmh-öffnen .Jnmh-m-Untermenü .Jnmh-subdl{ Breite: 80px; Höhe: 80px; Zeilenhöhe: 80px; Rand links: -40px; Kastenschatten: 0 3px 3px rgba (0, 0, 0, 0,1); Schriftgröße: 14px; } /*Navigationssymbol-Drei-Ebenen-Menücontainer*/ .NMH-g-navicon.Jnmh-öffnen .Jnmh-m-Untermenü .Jnmh-subdd{ Position: absolut; Zeilenhöhe: normal; } HTML Quelltext <div id="nmh-navicon" Klasse="NMH-g-Plugin NMH-g-navicon"> <button class="Jnmh-btnlogo"></button> <ins class="Jnmh-btnlogohover"></ins> <ul Klasse="Jnmh-m-Untermenü"> <li Klasse="Jnmh-subli"> <dl Klasse="Jnmh-subdl"> <dt class="NMH-subdt">E-Commerce-Plattform</dt> <dd class="NMH-subdd"></dd> </dl> </li> <li Klasse="Jnmh-subli"> <dl Klasse="Jnmh-subdl"> <dt class="NMH-subdt">Plattform zur Produktauswahl</dt> <dd class="NMH-subdd"></dd> </dl> </li> <li Klasse="Jnmh-subli"> <dl Klasse="Jnmh-subdl"> <dt class="NMH-subdt">Mitglieds-Upgrade</dt> <dd class="NMH-subdd"></dd> </dl> </li> <li Klasse="Jnmh-subli"> <dl Klasse="Jnmh-subdl"> <dt class="NMH-subdt">Produktbetrieb</dt> <dd class="NMH-subdd"></dd> </dl> </li> <li Klasse="Jnmh-subli"> <dl Klasse="Jnmh-subdl"> <dt class="NMH-subdt">Persönliches Zentrum</dt> <dd class="NMH-subdd"></dd> </dl> </li> </ul> </div> JavaScript-Code <script type="text/javascript" src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <Skripttyp="text/javascript"> // Auf das Ereignis „Mauseingabe ins Logo“ warten $(document).on('mouseenter','.Jnmh-btnlogo',function(){ $('#nmh-navicon').addClass('Jnmh-öffnen'); GtoggleNavlogo(); }); // Achten Sie auf das Entfernen der Maus oder auf Ereignisse zum Entfernen des Navigationsballs (warum achten wir nicht direkt auf #nmh-navicon, wenn wir den schwebenden Ball ausdehnen und zusammenziehen? Stattdessen achten wir noch einmal auf das Logo, um die Kantenauslösung zu reduzieren) $(document).on('mouseleave','#nmh-navicon',function(){ $('#nmh-navicon').removeClass('Jnmh-öffnen'); GtoggleNavlogo(); }); var GtoggleNavlogo = Funktion(){ var li = $('#nmh-navicon').find('.Jnmh-subli'); var lilen = li.Länge; var avgDeg = 180/(lilen-1); // Durchschnittswinkel var initDeg = 0; // Startrichtungswinkel if($('#nmh-navicon').hasClass('Jnmh-onleft')){ // Wenn der schwebende Ball nach links gezogen wird, wird das sekundäre Menü rechts angezeigt li.css({transform: 'rotate(0deg)'}); initDeg = 180; }anders{ // Standardmäßig befindet sich der schwebende Ball rechts und das sekundäre Menü links li.css({transform: 'rotate(-360deg)'}); } für(var i=0,j=lilen-1; i<lilen; i++,j--) { var d = initDeg - (i*avgDeg); var z = initDeg?j:i; // konsole.log(d); $('#nmh-navicon').hasClass('Jnmh-open') ? GrotateNavlogo(li[z],d) : GrotateNavlogo(li[z],0); } }; var GrotateNavlogo = Funktion (dom, Grad) { $({a:0}).animieren({a:deg}, { Schritt: Funktion (jetzt, fx) { $(dom).css({ transform: 'rotate('+now+'deg)' }); $(dom).children().css({ transform: 'rotate('+(-now)+'deg)' }); }, Dauer: 0 }); } //Ziehen Sie das Logo mit der Maus, um es zu verschieben $(document).on('mousedown','.Jnmh-btnlogo',function(e_down){ var wrap = $('#nmh-navicon'); wrap.removeClass('Jnmh-öffnen'); $('.Jnmh-m-submenu').hide(); GtoggleNavlogo(); var positionDiv = wrap.offset(); var AbstandX = e_down.pageX - positionDiv.links; var AbstandY = e_down.pageY - positionDiv.top + $(document).scrollTop(); $(Dokument).mousemove(diy_move); Funktion diy_move(e_move){ var x = e_move.pageX - EntfernungX; var y = e_move.pageY - EntfernungY; wenn (x < 0) { x = 0; } sonst wenn (x > $(document).width() - wrap.outerWidth(true)) { x = $(Dokument).width() - Wrap.äußereWidth(true); } wenn (y < 0) { y = 0; } sonst wenn (y > $(window).height() - wrap.outerHeight(true)) { y = $(Fenster).Höhe() - Wrap.ÄußereHöhe(true); } $(wrap).css({ 'links': x + 'px', „oben“: y + „px“ }); } $(Dokument).mouseup(Funktion() { var x = $(wrap).offset().left; var rm = '',ad = 'Jnmh-öffnen'; wenn(x > $(document).width()/2){ x = $(Dokument).width() - wrap.äußereWidth(true) -10; rm = "Jnmh-links"; }anders{ x = 10; Anzeige + = "Jnmh-links"; } $(wrap).css({left: x + 'px'}).addClass(ad).removeClass(rm); $('.Jnmh-m-submenu').anzeigen(); GtoggleNavlogo(); $(document).unbind('Mausbewegung',diy_move); }); }); </Skript> Dies ist das Ende dieses Artikels über die Implementierung des HTML-Gleit-Imitations-Floating-Ball-Menüeffekts. Weitere verwandte HTML-Gleit-Imitations-Floating-Ball-Menüinhalte finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! |
<<: Sublime/vscode – schnelle Implementierung zur Generierung von HTML-Code
>>: So öffnen Sie ein temporäres QQ-Dialogfeld, um online zu chatten, ohne Freunde hinzuzufügen
1. Mechanismus des Linux-Kernel-Treibermoduls Sta...
Mysql Left Join ist ungültig und wie man es verwe...
Inhaltsverzeichnis 1. Wenn beim Einfügen oder Änd...
Kreuzungsauswahl Der Schnittpunktselektor besteht...
Inhaltsverzeichnis Vorwort 1. Was ist Skalierbark...
offizielle Tomcat-Website Tomcat entspricht einem...
Einfache Verwendung des Vue-Busses Beschreibung d...
Dieser Artikel stellt ein Tutorial zur Verwendung...
Kürzlich erhielt ich eine Anforderung für eine Fun...
Heute möchte ich einige sehr nützliche HTML-Tags z...
Nach der Installation des neuesten Windows 10-Upd...
Der erzielte EffektImplementierungscode html <...
Vorwort Nginx ist ein auf Leistung ausgelegter HT...
Über die Baumdarstellung von Vue wird im Projekt ...
Die Ausführungsbeziehung zwischen dem href-Sprung...