2013-05-29 12 views
14

Patrząc zmienić kolor obramowania na polu ..Jak dodać/usunąć klasę na mouseOver/mouseOut - JQuery .hover?

..when użytkownik najedzie myszą/out ..

Oto próba kod .. wymaga pracy!

JQuery:

<script> 
$("result").hover(
    function() { 
    $(this).addClass("result_hover"); 
    }, 
    function() { 
    $(this).removeClass("result_hover"); 
    } 
); 
</script> 

CSS3:

<style> 
    .result { 
    height: 72px; 
    width: 100%; 
    border: 1px solid #000; 
    } 
    .result_hover { 
    border: 1px solid #fff; 
    } 
</style> 

HTML5:

<div class="result"> 
    <div class="item"> 
    <div id="item1"> 
     <i class="icon"></i>&nbsp;## 
    </div> 
    </div> 
<div> 

Dzięki za patrząc

Odpowiedz

48

zapomniałeś dot z class selector wyniku C dziewczyna.

Live Demo

$(".result").hover(
    function() { 
    $(this).addClass("result_hover"); 
    }, 
    function() { 
    $(this).removeClass("result_hover"); 
    } 
); 

Można użyć toggleClass na hover imprezy

Live Demo

$(".result").hover(function() { 
    $(this).toggleClass("result_hover"); 
}); 
8

można po prostu użyć: {i obecnie funkcję zwrotną}

$(".result").hover(function() { 
    $(this).toggleClass("result_hover"); 
}); 

Dla przykładu, lepiej będzie użyć CSS klasy pseudo :hover: {Nie js/jquery potrzebne}

.result { 
    height: 72px; 
    width: 100%; 
    border: 1px solid #000; 
    } 
    .result:hover { 
    background-color: #000; 
    } 
1

Brakuje kropki na pokrętle, można użyć metody toggleClass na jQuery:

$(".result").hover(
    function() { 
    $(this).toggleClass("result_hover")  
    } 
); 
2

Twój selektor brakuje . i chociaż mówisz, że chcesz zmienić border-color - jesteś dodawania i usuwania klasy, która ustawia background-color

+0

Dobry połów .. Chwytany starszy kod. Zaktualizowany – sourcingsynergy