Hallo, ich habe zwei Fragen:
1.) Ich arbeite zur Zeit an einem kleinen Projekt. Die Webseite, die ich dafür machen muss, soll ein paar fadeIn usw. Effekte per jQuery bekommen. Dies funktioniert auch problemlos. Wenn ich allerdings sowohl eine jQuery Lösung mache und im CSS die entsprechende CSS Lösung (falls Javascriprt deaktiviert ist), dann wird die jQuery Variante einfach "überschrieben". Dies war wahrscheinlich nicht verständlich, deshalb ein kleines Beispiel:
Ich würde gerne wenn man über einen a-tag hovert das darin liegende span-Element einblenden und entsprechend wieder ausblenden. Der HTML teil davon ist ganz einfach:
Der CSS Teil davon ist ebenfalls simpel, aber ohne Animation
Der jQuery Teil ebenfalls sehr einfach
Wenn ich allerdings so eine Datei anlege mit CSS und jQuery, dann wird der span Container ruckhaft eingeblendet und nicht eingefadet, obwohl es im Javascript steht. Wenn ich allerdings das
weglasse, dann wird der span Container schön eingefadet (natürlich nur wenn man dem auch eine Hintergrundfarbe gibt). Allerdings funktioniert dies dann nur mit eingeschaltetem Javascript. Gibt es eine Möglichkeit entsprechende CSS Regeln mit jQuery zu deaktivieren, damit diese ignoriert werden und er trotz Fallback CSS Regeln nur den Javsascript Code ausführt. Oder gibt es eine bessere Lösung?
2.) Wie spreche ich benachbarte Elemente mit jQuery an. Also der HTML Code sieht so aus
Ich möchte nun bei :hover über den a-tag (im li-Element) das benachbarte div.left einfaden lassen. Mit CSS geht dies mit Hilfe des "+" Selektors:
Allerdings ist das wieder so ruckhaft (siehe oben). Ich hätte gerne eine jQuery Lösung, damit es richtig einfadet. Geht dies?
Vielen Dank und gruß
1.) Ich arbeite zur Zeit an einem kleinen Projekt. Die Webseite, die ich dafür machen muss, soll ein paar fadeIn usw. Effekte per jQuery bekommen. Dies funktioniert auch problemlos. Wenn ich allerdings sowohl eine jQuery Lösung mache und im CSS die entsprechende CSS Lösung (falls Javascriprt deaktiviert ist), dann wird die jQuery Variante einfach "überschrieben". Dies war wahrscheinlich nicht verständlich, deshalb ein kleines Beispiel:
Ich würde gerne wenn man über einen a-tag hovert das darin liegende span-Element einblenden und entsprechend wieder ausblenden. Der HTML teil davon ist ganz einfach:
Code:
<a href=""><span></span></a>
Code:
a span { display: none; }
a:hover span { display: block; }
Code:
$(document).ready(function() {
$("a").mouseenter(function() {
$("span", this).fadeIn(300);
});
$("a").mouseeleave(function() {
$("span", this).fadeOut(300);
});
});
Code:
a:hover span { display: block; }
2.) Wie spreche ich benachbarte Elemente mit jQuery an. Also der HTML Code sieht so aus
Code:
<div class="clearfix" id="portfolio">
<ul>
<li><a href=""><span></span><img src="images/showcase_ex1.png" /></a><div class="left">Info</div></li>
</ul>
</div>
Code:
#portfolio ul li div.left { display: none; position: absolute; left: 137px; top: 0; z-index: 2;width: 134px; height: 134px; }
#portfolio ul li a:hover + div.left { display: block; }
Allerdings ist das wieder so ruckhaft (siehe oben). Ich hätte gerne eine jQuery Lösung, damit es richtig einfadet. Geht dies?
Vielen Dank und gruß