2010-01-13 16 views

Odpowiedz

13

żywo demo następujące rozwiązanie: http://jsbin.com/umiru

-

Najprostszym sposobem mogę myśleć to zmienić:

a:hover { ... } 

do

a.someClass:hover { ... } 

A potem dodaj/usuń .someClass za pośrednictwem metod jQuery:

$(this).addClass("someClass"); // activates css rules for :hover 
$(this).removeClass("someClass"); // deactivates css rules for :hover 
+1

próbowali że nie działa – zsharp

+0

Czy masz na myśli, że twój arkusz stylów ma 'a: hove r {color: red} 'lub coś podobnego? – Sampson

+0

yes thats hhh – zsharp

2

Najprostszym sposobem jest utworzenie nowej reguły CSS dla konkretnego tagu. Coś jak

a.linkclass:hover {color:samecolor} 

Jeśli trzeba użyć jQuery zastępują style domyślne, trzeba ręcznie dodać reguły CSS w stanie wskaźnikiem, coś takiego:

$('a.linkclass').hover(function(){ 
    $(this).css({'color':'samecolor'}); 
}); 

nadzieję, że ta pomoc

0

Wystarczy zdefiniować CSS bez "a: hover"

a { color: #fffff } 

Ten CSS przesłonić a: link, a: hover, a: visited i a: active.

6

Oto rozwiązanie bez klas Hack:

CSS:

a {color: blue;} 
a:hover {color: red;} 

jQuery (używa jQueryUI animować kolor):

$('a').hover( 
    function() { 
    $(this) 
     .css('color','blue') 
     .animate({'color': 'red'}, 400); 
    }, 
    function() { 
    $(this) 
     .animate({'color': 'blue'}, 400); 
    } 
); 

demo

Powiązane problemy