2010-10-06 4 views
8

Mam łącze i gdy użytkownik najedzie myszą na niego, powinien wyświetlić pole (div) pod linkiem. Skrzynka powinna pokrywać wszystko, co jest pod nią. Jak mogę to zrobić za pomocą css lub javascript?Jak nakładać div/box na mouseover?

Odpowiedz

6

Utworzono sample here. Możesz modyfikować stamtąd, aby dopasować się do twoich potrzeb.

<div class="hover">Hover here</div> 
<div class="overlay" style="visibility:hidden"> 
<img src="http://www.google.com/images/logos/ps_logo2.png" alt="google" /> 
</div>​ 


$(document).ready(function() 
{ 
    $("div.hover").mouseover(function() 
    { 
    $(this).css('cursor', 'pointer'); 
    $("div.overlay").css('visibility','visible'); 
    }); 
    $("div.hover").mouseout(function() 
    { 
    $(this).css('cursor', 'default'); 
    $("div.overlay").css('visibility','hidden'); 
    }); 
}); 
+0

Jeśli dodaję element div w nakładce i nałożę na nią nakładkę, jak to zrobić? Currenlty, widzę białą przestrzeń utworzoną pod wskaźnikiem myszy, aby nakładka była naświetlona. – svirk

+0

Ten element div nakładki w rzeczywistości nie nakłada się. To nie rozwiązuje problemu: "Skrzynia powinna pokrywać wszystko, co jest pod nią". –

11

Masz ukryty div z pozycją bezwzględną i dziecko z linku. Następnie, gdy umieścisz kursor nad linkiem, powinieneś odkryć element div. Nie mogę podać pełnego CSS, a tego nie przetestowałem, ale to powinno ci wystarczyć. Będziesz musiał się bawić z pozycjonowaniem i rozmiarami.

<a href="#" class="special">Somewhere<div class="desc">This is hidden.</div></a> 

a.special { position:relative; } 
a.special div.desc { background-color:white; display:none; position:absolute; z-index:100; } 
a.special:hover div.desc { display:block; } 

To byłby czysty sposób CSS.

+0

To jest naprawdę dobry, ponieważ nie wymaga żadnych JavaScript. Wielkie dzięki !!! – svirk

0
$("#id").mouseover(function(){ 
    $("a[rel='#petrol']").overlay().load(); 
}); 
$("#id").mouseout(function(){ 
    $("a[rel='#petrol']").overlay().close(); 
}); 
+0

Aby poprawić jakość swojego wpisu, podaj, w jaki sposób/dlaczego ten kod rozwiąże problem. –