Ich versuche zu verhindern, dass der Browser den :hover
Effekt des CSS über JavaScript nutzt .
Ich habe die a
und a:hover
-Stile in meinem CSS festgelegt, da ich einen Hover-Effekt möchte, wenn JS nicht verfügbar ist. Aber wenn JS ist verfügbar, möchte ich mit einem meiner CSS Hover - Effekt zu überschreiben glattere ein (mit dem jQuery Farbe zum Beispiel Plugin.)
Ich habe es versucht:
$("ul#mainFilter a").hover(
function(e){ e.preventDefault(); ...do my stuff... },
function(e){ e.preventDefault(); ...do my stuff... });
Ich habe es auch mit versucht return false;
, aber es funktioniert nicht.
Hier ist ein Beispiel für mein Problem: http://jsfiddle.net/4rEzz/ . Der Link sollte nur verblassen, ohne grau zu werden.
Wie von fudgey erwähnt, besteht eine Problemumgehung darin, die Schwebestile mithilfe von zurückzusetzen, .css()
aber ich müsste jede einzelne Eigenschaft, die im CSS angegeben ist, überschreiben (siehe hier: http://jsfiddle.net/raPeX/1/ ). Ich suche eine generische Lösung.
Weiß jemand, wie man das macht?
PS: Ich möchte nicht jeden Stil überschreiben, den ich für den Hover festgelegt habe.