Avatar billede erik8085 Nybegynder
09. april 2006 - 09:49 Der er 7 kommentarer og
1 løsning

hvor er musen

Noget html'en ser f. eks. sådan ud:

...
<p id="1">her er noget tekst<p>
<div id="2">her er mere tekst</div>
<img src="xxx.jpg" id="3"/>
...

Når jeg bevæger musen hen over en hjemmeside skal jeg (javascript) vide hvilket element musen befinder sig over.

er der nogen der kender et javascript som kan beregne hvilken id musen befinder sig over. 


hilsen erik
Avatar billede ducks Nybegynder
09. april 2006 - 10:14 #1
onmouseover og onmouseout

<html>
  <head>
    <title>unnamed</title>
    <script type="text/javascript">
      function doOver(int_id)
        document.getElementById('aktiv').innerHTML='Musen er over: '+int_id;
      function doOut(int_id)
        document.getElementById('aktiv').innerHTML='Musen er udenfor id';
    </script>
  </head>
  <body>
    <p>
      <span id="aktiv">Flyt musen over noget</span>
    </p>
    <p id="1" onmouseover="doOver(1);" onmouseout="doOut(1);">
      her er noget tekst
    <p>
    <div id="2" onmouseover="doOver(2);" onmouseout="doOut(2);">
      her er mere tekst
    </div>
    <img src="xxx.jpg" id="3" alt="" onmouseover="doOver(3);" onmouseout="doOut(3);" />
  </body>
</html>
Avatar billede roenving Novice
09. april 2006 - 10:28 #2
-- det skal da lige tilføjes at et id, der starter med et tal ikke er gyldigt iflg. w3cs standarder !-)

-- jeg er dog bekendt med, at en enkelt større browser mener noget andet ...
Avatar billede ducks Nybegynder
09. april 2006 - 10:46 #3
Men reglerne skal jo desværre helst overholde :(

Så bare brug noget lign det her:

<html>
  <head>
    <title>unnamed</title>
    <script type="text/javascript">
      function doOver(int_id)
        document.getElementById('aktiv').innerHTML='Musen er over: tekst'+int_id;
      function doOut(int_id)
        document.getElementById('aktiv').innerHTML='Musen er udenfor id';
    </script>
  </head>
  <body>
    <p>
      <span id="aktiv">Flyt musen over noget</span>
    </p>
    <p id="tekst1" onmouseover="doOver(1);" onmouseout="doOut(1);">
      her er noget tekst
    <p>
    <div id="tekst2" onmouseover="doOver(2);" onmouseout="doOut(2);">
      her er mere tekst
    </div>
    <img src="xxx.jpg" id="tekst3" alt="" onmouseover="doOver(3);" onmouseout="doOut(3);" />
  </body>
</html>
Avatar billede mclemens Nybegynder
09. april 2006 - 11:10 #4
Kaster lige en rettet udgave ind
der var lidt js advarsler på den anden...


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>
  <head>
    <title>unnamed</title>
    <script type="text/javascript">
      function doOver(int_id){
        document.getElementById('aktiv').childNodes.item(0).data='Musen er over: tekst'+int_id.id;}
      function doOut(){
        document.getElementById('aktiv').childNodes.item(0).data='Musen er udenfor id';}
    </script>
  </head>
  <body>
    <p>
      <span id="aktiv">Flyt musen over noget</span>
    </p>
    <p id="tekst1" onmouseover="doOver(this);" onmouseout="doOut();">
      her er noget tekst
    <p>
    <div id="tekst2" onmouseover="doOver(this);" onmouseout="doOut();">
      her er mere tekst
    </div>
    <img src="xxx.jpg" id="tekst3" alt="" onmouseover="doOver(this);" onmouseout="doOut();" />
  </body>
</html>
Avatar billede erik8085 Nybegynder
09. april 2006 - 17:20 #5
tak til mclemens. Har prikket på svarknappen. Det giver dig forhåbentligt  pointene. 
jeg havde stirret mig blind på andre javascript metoder og kunne derfor ikke lige se din løsning.
På  www.sitepoint.com  findes nogle af de bedste hjmemmesidebøger jeg har læst; men det er en længere historie at forklare hvordan deres bøger løser events problematikken;-).
Hilsen Erik
Avatar billede mclemens Nybegynder
09. april 2006 - 17:25 #6
ducks læg et svar ;)
- jeg rettede den ikke for at få point :)
erik8085 herefter trykker du på dit navn og afvis svar
- herefter ducks navn og godkend svar ;)
mvh. Clemme
Avatar billede erik8085 Nybegynder
09. april 2006 - 22:06 #7
ja sorry, der gik kludder i pointgivningen.
DUCKS læg et svar! så skal jeg være der.
Hilsen Erik
Avatar billede ducks Nybegynder
13. april 2006 - 14:35 #8
Så er jeg her igen
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