Avatar billede mac10 Nybegynder
24. maj 2010 - 17:20 Der er 3 kommentarer og
1 løsning

jQuery - Hover spørgsmål?

Hej allesammen,

Jeg er ved at lave en lille funktion hvor man kan pege over et div, hvorefter en boks kommer ned med nogle funktioner, hvis man fjerner musen forsvinder den igen - så langt så godt med følgende kode:

$(document).ready(function () {       
    $('#hover').hover(
        function () {
            //show its submenu
            $('#box').slideDown(100);

        },
        function () {
            //hide its submenu
            $('#box').slideUp(100);           
        }
    );
   
});

Problemet er bare at når man peger musen over #box så forsvinder den. Det er kun så længe man har musen på #hover at den forbliver der. Jeg har prøvet med:
$('#hover', '#box').hover(
men virker ikke.

Er nybegynder til jQuery så ved slet ikke hvordan jeg skal komme videre. Nogle der kan give et skub den rigtige vej? På forhånd mange tak.
Avatar billede aners Nybegynder
24. maj 2010 - 18:12 #1
Prøv at oprette spørgsmålet på http://forum.jquery.com/using-jquery-ui i stedet.
Avatar billede softspot Forsker
24. maj 2010 - 18:20 #2
Du kan lave en timer som venter lidt med at skjule #box, når du forlader #hover. Denne timer kan du så annullere når du entrerer #box og så lave endnu en handler der skjuler #box når du forlader #box. Noget i stil med dette (utestet):


var boxhandler = null;
function hideBox() {
  //hide its submenu
  $('#box').slideUp(100);           
}
$(function() {       
  $('#hover').hover(
    function() {
      //show its submenu
      $('#box').slideDown(100);
    },
    function() {
      boxhandler = setTimeout("hideBox()",300);
    }
  );
  $("#box").hover(
    function() {
      if(boxhandler) clearTimeout(boxhandler);
    },
    function() { 
      hideBox();
    }
  ); 
});

Alternativt kan du, hvis #box ligger i forbindelse med eller overlapper #hover, lægge #box inde i #hover-elementet, for så vil #box ikke blive skjult når du fører musen over #box (da den stadig vil være i #hover-elementet).

<div id="hover">
  bla bla
  <div id="box">
    noget popup-halløj
  </div>
</div>
Avatar billede mac10 Nybegynder
10. november 2010 - 12:10 #3
Lav svar tak
Avatar billede softspot Forsker
10. november 2010 - 12:16 #4
Svar :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester