zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden jquery - hover und mehrere elemente

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 02.03.2011, 21:34
Benutzerbild von monran
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.07.2009
Beiträge: 180
monran befindet sich auf einem aufstrebenden Ast
Standard jquery - hover und mehrere elemente

Hi,

mal wieder in kleines jquery script..

ich habe auf einer seite mehre infoboxen.
ohne javascript werden diese per a:hover aufgerufen

HTML-Code:
<a href="#"><span>inhalt hoverbox</span></a>
dürfte klar sein

nun will ich das ganze wenn js aktiv ist etwas schöner gestalten...

daher ersteinmal a:hover span {display:block} auf none setzen. und anschließend fadeIn oder out

PHP-Code:
    $(".hoverbox a").hover(function() {
        $(
".info").stop(true,true);
        $(
".hoverbox a:hover span.info").css("display","none");
        $(
".info").slideDown(300);
    }, function() {
        $(
".info").slideUp(300);
    }); 
funktioniert soweit.. außer: bei mouseout macht er quasi einfach ein display:none anstatt dem slideup

zweites problem was wohl mit den mehreren hoverboxen zusammenhängt..
fahre ich über den link der hoverbox1 blendet er mir, so wie laut code es sein soll, hoverbox2 ein. allerdings mit display:inline was natürlich zu darstellungsfehlern führt..

natürlich sollte er bei überfahren des links von hoverbox1 auch entsprechend hoverbox1 einblenden. lösung wäre jedem a eine id zuweisen.. und entsprechend mit this.id auszulesen
aber kennt jquery nicht eine möglichkeit zu sagen "ich fahre gerade über element x und hovere entsprechend" ???

wer ideen hat bekommt von mir ein eis spendiert (aber nur eine kugel, aber eine große )
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 04.03.2011, 17:46
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Zeig mal bitte ne Demo, die könnt helfen ich versteh das Problem nämlich leider grad garnet
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 04.03.2011, 19:03
Benutzerbild von monran
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.07.2009
Beiträge: 180
monran befindet sich auf einem aufstrebenden Ast
Standard

ok
http://www.einfachhilfe.net/example.php

beim überfahren des icons blendet er die box ein. bei mouseout aber zeigt er keine animation... erst wenn man ganz schnell undoft über das icon fährt.. dann blendet er auch die slideUp animation ein....

zweites problem.. natürlich sollte bei box1 der zusatztext von box1 und bei box2 eben box2 eingeblendet werden.. hier fehlt mir aber der ansatz (ich könnte jeder box eine eigene id zuweisen... aber gehts nicht einfacher?)
Mit Zitat antworten
  #4 (permalink)  
Alt 05.03.2011, 15:57
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 14.04.2007
Ort: Berlin
Beiträge: 159
netAction befindet sich auf einem aufstrebenden Ast
Standard

Hallo!

Zunächst einmal ist <a href="#"> semantisch Tonne. Für ein CCS-Hover muss es nicht a:hover sein, es funktioniert auch span:hover.

In deinem Beispielcode hast du <a href="http://"> und solchen Spaß. Auch taget="_blank" ist verboten und nervt vor allem unerfahrene User, die plötzlich alles voller Tabs haben.

Den ganzen Spaß mit display:none kannst du dir sparen. slideDown und slideUp reichen. Mach am Anfang zum Verstecken der Boxen ein $(".info").hide();

Die Sache, dass sich die Aktion auf das Element bezieht, in dem du gerade bist, löst du mit "this". "this" ist das A-Element, du willst aber das darin enthaltene SPAN erreichen. Also $(this).children().slideDown();

Schau dir mal das Video jQuery Demo - Expandable Sidebar Menu on Vimeo an. Das beinhaltet einige sehr schlaue Kniffe, was man mit "this" anstellen kann.
__________________
netAction
Mit Zitat antworten
  #5 (permalink)  
Alt 13.04.2011, 20:57
Benutzerbild von monran
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.07.2009
Beiträge: 180
monran befindet sich auf einem aufstrebenden Ast
Standard

um darauf nochmal zurück zukommen...

Zitat:
Für ein CCS-Hover muss es nicht a:hover sein, es funktioniert auch span:hover.
aber nicht im IE, deswegen ein a tag.
vor allem aber ist der link anklickbar.. (# hatte ich nur zum test drin stehn..)


so nun zum eigentlichen problem:
um die hoverbox auch ohne JS zum laufen zu kriegen muss im CSS definiert sein
a span.info { display:none; }
a:hover span.info { display:block; }

und das kommt mit dem jquery in die quere...
so wie ich es momentan habe funktioniert es bis auf einen bug:
einfach mal vertikal schnell hin und her über icon fahren...

mir fällt da jetzt zu später stunde auch nicht mehr ein wie ich das sonst lösen kann (siehe quellcode in example.php)

habt ihr eine idee?
Mit Zitat antworten
  #6 (permalink)  
Alt 13.04.2011, 21:51
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 14.04.2007
Ort: Berlin
Beiträge: 159
netAction befindet sich auf einem aufstrebenden Ast
Standard

IE? Gibts den Blödsinn immer noch?

Bei mir sieht es ausgezeichnet aus. Aber übertreibe es nicht, Webseiten mit der Haptik eines Transformer-Autos nerven.
__________________
netAction
Mit Zitat antworten
  #7 (permalink)  
Alt 13.04.2011, 22:59
Benutzerbild von monran
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.07.2009
Beiträge: 180
monran befindet sich auf einem aufstrebenden Ast
Standard

leider ja

nun entweder ich machs per klick auf das icon oder per hover, letzteres finde ich sinnvoller. aber buggy ist es trotzdem... siehe das video hier

den code mal angeschaut? das geht doch auch simpler oder?
Mit Zitat antworten
  #8 (permalink)  
Alt 14.04.2011, 01:19
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Wo sich JS und CSS in die Quere kommen nutze ich immer gerne die .no-js Lösung

Ich gebe im Code jedem speziellen Element das Probleme macht die Klasse .no-js mit. Im CSS schreibe ich es dann auch so.

Per JS wird nun jedes .no-js Klasse entfernt und voilla es geht
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #9 (permalink)  
Alt 20.04.2011, 20:01
ofHouse
XHTMLforum-Mitglied
 
Registriert seit: 20.04.2011
Beiträge: 128
Borsti befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Thielo Beitrag anzeigen
Per JS wird nun jedes .no-js Klasse entfernt und voilla es geht
Dann hat es aber keinen Slide-Effekt

schon mal so probiert?

Code:
    $(".hoverbox a").focus(function() {
        $(".info").slideDown(300);
    }, function() {
        $(".info").slideUp(300);
    });
__________________
LG f

@ofhouse
Mit Zitat antworten
Sponsored Links
Antwort


Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Hilfe css Menu center xXcyberXx CSS 5 28.11.2010 19:51
Problem mit CSS Menü SMundt CSS 9 07.01.2009 19:12
CSS Navigation - Problem mit IE6 pcklinik CSS 4 18.09.2007 12:04
Darstellungsproblem CSS Navigation im IE7 pcklinik CSS 7 09.09.2007 17:25
CSS Einsteiger bittet um Hilfe pcklinik CSS 0 06.09.2007 14:40


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:09 Uhr.