Avatar billede zpinner Nybegynder
15. august 2004 - 17:44 Der er 6 kommentarer

for løkke

function ser sådan her ud.
function show(element)    {
for(I=1; I<11; I++){
if(element==I){
for(P=10; P > I; P--){
document.getElementById(P).style.visibility = 'visible';}
}
}
};
og det som kører function ser sådan her ud.

<tr  OnMouseOver=\"show($i)\"; OnMouseOut=\"hide($i)\" >

functionen hide virker fint nok den kommer lige her  hvis det kan hjælpe.

function hide(element)    {
for(I=1; I<11; I++){
if(element==I){
for(O=1; O<I; O++){
document.getElementById(O).style.visibility = 'hidden';   
}
}
}
};
Avatar billede roenving Novice
15. august 2004 - 18:09 #1
Jeg vil lige starte med at gøre opmærksom på, at et id, som alene består af et tal eller starter med et tal er direkte ulovlig, men jeg vil ikke afvise, at visse browsere vil acceptere det, men tag og sæt f.eks. 'id' foran tallene, det kan ikke være så svært, så vil det også virke i alle browsere:

id="id2"

-- og så forstår jeg ikke du går så langt omkring, hvad med at:

function show(element){
  for(i=element+1; i<11; i++){
    document.getElementById('id'+i).style.visibility = 'visible';
  }
}

function hide(element){
  for(i=element+1; i<11; i++){
    document.getElementById('id'+i).style.visibility = 'hidden';   
  }
}

-- bemærk selvfølgelig også, at det netop skal være id'er, men jeg tror ikke det er det, du kan have problemer med !-)
Avatar billede zpinner Nybegynder
15. august 2004 - 18:41 #2
jeg syntes lige at du skal se hele siden  det jeg skal ha er  en bar som følger musen når musen kører over den..

<script language="JavaScript" type="text/javascript">

function hide(element)    {
for(I=1; I<11; I++){
if(element==I){
for(O=1; O<I; O++){
document.getElementById(O).style.visibility = 'hidden';   
}
}
}
};

function show(element)    {
for(I=1; I<11; I++){
if(element==I){
for(P=10; P > I; P--){
document.getElementById(P).style.visibility = 'visible';}
}
}
};

</script>
<body  >
<table border="0" cellspacing="0" cellpadding="0">
<?php
for($i = 1; $i <10; $i++){
echo"
  <tr  OnMouseOver=\"show($i)\"; OnMouseOut=\"hide($i)\" >
    <td><span id='$i' class='dropkasse2'><div OnMouseOver=\"show('$i'); this.className='menuover2';\"
    OnMouseOut=\"hide('$i'); this.className='menuout2';\" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>\n";}
?>
</table>

og så skal den løkken show kører baglens  men jeg kan ik rigtig få det til at fungere
Avatar billede roenving Novice
15. august 2004 - 19:01 #3
?-)

Jeg har ik' helt forstået, hvad du vil, så jeg har prøvet at lave den som jeg selv ville (og har ikke adgang til php, så det er lavet i langsomt html !-)

<style type="text/css">
.menu2{background:#eee;}
.dropkasse2{border:2px inset blue;visibility:hidden;}
</style>

<script language="JavaScript" type="text/javascript">
function show(element){
  for(i=element;11>i; i++){
    document.getElementById('id'+i).style.visibility = 'visible';
  }
}
function hide(element){
  for(i=element;11>i; i++){
    document.getElementById('id'+i).style.visibility = 'hidden';   
  }
}
</script>
<body  >
<table border="0" cellspacing="0" cellpadding="0">
  <tr  OnMouseOver="show(1)"; OnMouseOut="hide(1)" >
    <td><span id='id1' class='dropkasse2'><div OnMouseOver="show(1); this.style.background='#333';" OnMouseOut="hide(1);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(2)"; OnMouseOut="hide(2)" >
    <td><span id='id2' class='dropkasse2'><div OnMouseOver="show(2); this.style.background='#333';" OnMouseOut="hide(2);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(3)"; OnMouseOut="hide(3)" >
    <td><span id='id3' class='dropkasse2'><div OnMouseOver="show(3); this.style.background='#333';" OnMouseOut="hide(3);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(4)"; OnMouseOut="hide(4)" >
    <td><span id='id4' class='dropkasse2'><div OnMouseOver="show(4); this.style.background='#333';" OnMouseOut="hide(4);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(5)"; OnMouseOut="hide(5)" >
    <td><span id='id5' class='dropkasse2'><div OnMouseOver="show(5); this.style.background='#333';" OnMouseOut="hide(5);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(6)"; OnMouseOut="hide(1)" >
    <td><span id='id6' class='dropkasse2'><div OnMouseOver="show(6); this.style.background='#333';" OnMouseOut="hide(6);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(7)"; OnMouseOut="hide(7)" >
    <td><span id='id7' class='dropkasse2'><div OnMouseOver="show(7); this.style.background='#333';" OnMouseOut="hide(7);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(8)"; OnMouseOut="hide(8)" >
    <td><span id='id8' class='dropkasse2'><div OnMouseOver="show(8); this.style.background='#333';" OnMouseOut="hide(8);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(9)"; OnMouseOut="hide(9)" >
    <td><span id='id9' class='dropkasse2'><div OnMouseOver="show(9); this.style.background='#333';" OnMouseOut="hide(9);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
  <tr  OnMouseOver="show(10)"; OnMouseOut="hide(10)" >
    <td><span id='id10' class='dropkasse2'><div OnMouseOver="show(10); this.style.background='#333';" OnMouseOut="hide(10);this.style.background='#ddd';" class='menu2'><img src='bar.gif'></div></span></td>
  </tr>
</table>

-- bemærk iøvrigt, at jeg ikke har fjernet this.className fordi jeg ikke gad at lave nogle styles, men fordi det er tåbeligt at bede browseren smide hele sit skærmbillede ud og starte forfra, fordi man lige skal lave nogle detalje-ændringer i visningen af nogle enkelt-elementer ...
Avatar billede zpinner Nybegynder
15. august 2004 - 19:12 #4
hehe okay  men der er bare lige en ting kan det ikke laves sådan at når man trækker musen væk fra midten af baren så bliver den på midten.. :D
Avatar billede zpinner Nybegynder
15. august 2004 - 19:34 #5
nå jeg fandt ud af det.
det er jo nok kun at ha en enkel function som ser sådan ud:
<script language="JavaScript" type="text/javascript">
function show(element){
  for(i=1;11>i; i++){
    if(i>=element){
    document.getElementById('id'+i).style.visibility = 'visible';
    }else{
    document.getElementById('id'+i).style.visibility = 'hidden';
    }   
  }
}
</script>
og så bruges den function som hedder OmMouseOut ikke.. :D  men tak for hjælpen, vil godt af med lidt points så hehe :D
Avatar billede roenving Novice
15. august 2004 - 19:42 #6
Velbekomme '-)
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