Avatar billede medions Nybegynder
13. februar 2003 - 11:59 Der er 13 kommentarer og
1 løsning

Makere det punkt der er valgt

Hvordan laver jeg følgende:
Idet der klikkes på et menu skal det gøres fed. Klikkes der så på et andet menupunkt skal det "gamle" menupunkt være normal igen, og det nye punkt skal blive fed.

Jeg har flg. funktion der gør det allerede nu. Men den er ikke dynamisk!

function makeBold (style2,style3,style4,style5,style6,style7) {
    document.getElementById("2").style.fontWeight = style2;
    document.getElementById("3").style.fontWeight = style3;
    document.getElementById("4").style.fontWeight = style4;
    document.getElementById("5").style.fontWeight = style5;
    document.getElementById("6").style.fontWeight = style6;
    document.getElementById("7").style.fontWeight = style7;
}

                        <td style="FONT-SIZE: 9px; WIDTH: 140px; FONT-FAMILY: verdana">
                                <span onclick="jump('menu2');this.blur();makeBold('bold','normal','normal','normal','normal','normal');" id="2" style="CURSOR: pointer">DERFOR ER IBA ANDERLEDES</span> <p>
                                <span onclick="jump('menu3');this.blur();makeBold('normal','bold','normal','normal','normal','normal');" id="3" style="CURSOR: pointer">STUDIER</span> <p>
                                <span onclick="jump('menu4');this.blur();makeBold('normal','normal','bold','normal','normal','normal');" id="4" style="CURSOR: pointer">VIRKSOMHEDER</span> <p>
                                <span onclick="jump('menu5');this.blur();makeBold('normal','normal','normal','bold','normal','normal');" id="5" style="CURSOR: pointer">MENNESKER OG MILJØ </span> <p>
                                <span onclick="jump('menu6');this.blur();makeBold('normal','normal','normal','normal','bold','normal');" id="6" style="CURSOR: pointer">DET SKER PÅ IBA</span> <p>
                                <span onclick="jump('menu7');this.blur();makeBold('normal','normal','normal','normal','normal','bold');" id="7" style="CURSOR: pointer">KONTAKT</span> <p>
                            </td>

//>Rune
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 12:17 #1
Mener du sådan her :

<script>
var forrige = false;
function makeBold (hvad) {
  if(!forrige){
    document.getElementById(hvad).style.fontWeight = "bold";
    forrige = hvad;
    jump("menu"+hvad.substring(1,2))
  }else if(forrige&& forrige!=hvad){
  document.getElementById(forrige).style.fontWeight = "normal";
  document.getElementById(hvad).style.fontWeight = "bold";
  forrige = hvad;
  }
}

</script>
<table>
<tr>
    <td style="FONT-SIZE: 9px; WIDTH: 140px; FONT-FAMILY: verdana">
<span onclick="this.blur();makeBold(this.id);" id="m2" style="CURSOR: pointer">DERFOR ER IBA ANDERLEDES</span> <p>
<span onclick="this.blur();makeBold(this.id);" id="m3" style="CURSOR: pointer">STUDIER</span>
<p>
<span onclick="this.blur();makeBold(this.id);" id="m4" style="CURSOR: pointer">VIRKSOMHEDER</span> <p>
<span onclick="this.blur();makeBold(this.id);" id="m5" style="CURSOR: pointer">MENNESKER OG MILJØ </span>
<p>
<span onclick="this.blur();makeBold(this.id);" id="m6" style="CURSOR: pointer">DET SKER PÅ IBA</span><p>
<span onclick="this.blur();makeBold(this.id);" id="m7" style="CURSOR: pointer">KONTAKT</span>
<p>
    </td>

/Nikolaj
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 12:18 #2
Læg lige mærke til at jeg har ændre dine id´er fra udelukkende tal til :

id="m2", id="m3" osv.

/Nikolaj
Avatar billede medions Nybegynder
13. februar 2003 - 12:25 #3
Hmm den melder en fejl... Object Expected!

Her er min kode:

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
<script language="JavaScript">
var forrige = false;
function makeBold (hvad) {
  if(!forrige){
    document.getElementById(hvad).style.fontWeight = "bold";
    forrige = hvad;
    jump("menu"+hvad.substring(1,2))
  }else if(forrige&& forrige!=hvad){
  document.getElementById(forrige).style.fontWeight = "normal";
  document.getElementById(hvad).style.fontWeight = "bold";
  forrige = hvad;
  }
}
</script>
</HEAD>
<BODY>

<table>
<tr>
    <td style="FONT-SIZE: 9px; WIDTH: 140px; FONT-FAMILY: verdana">
<span onclick="this.blur();makeBold(this.id);" id="m2" style="CURSOR: pointer">DERFOR ER IBA ANDERLEDES</span> <p>
<span onclick="this.blur();makeBold(this.id);" id="m3" style="CURSOR: pointer">STUDIER</span>
<p>
<span onclick="this.blur();makeBold(this.id);" id="m4" style="CURSOR: pointer">VIRKSOMHEDER</span> <p>
<span onclick="this.blur();makeBold(this.id);" id="m5" style="CURSOR: pointer">MENNESKER OG MILJØ </span>
<p>
<span onclick="this.blur();makeBold(this.id);" id="m6" style="CURSOR: pointer">DET SKER PÅ IBA</span><p>
<span onclick="this.blur();makeBold(this.id);" id="m7" style="CURSOR: pointer">KONTAKT</span>
<p>
    </td>
  </tr>
  </table>
</BODY>
</HTML>

//>Rune
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 12:26 #4
jump("menu"+hvad.substring(1,2))

Det er fordi du kalder funktionen "jump()"

Den er jo ikke med her...

function jump(hvorhen){
alert(hvorhen);
}
Avatar billede medions Nybegynder
13. februar 2003 - 12:29 #5
hmm jamen hvorfor er jumb() ikke længere angivet i min onclick event? -Jumb() har noget med en helt anden funktion at gøre, så den vil jeg gerne vedligeholde i min onclick event hvis det er muligt!

//>Rune
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 12:33 #6
onclick="jump('menu2');this.blur();makeBold('normal','bold','normal','normal','normal','normal');" id="2"
onclick="jump('menu3');this.blur();makeBold('normal','bold','normal','normal','normal','normal');" id="3"

Syntes jeg bare kunne skrives ned til den noget kortere :

onclick="this.blur();makeBold(this.id);"

Den kalder jo jump med et tal der svarer til det der står i ID. altså 2,3,4...
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 12:36 #7
Og så skal vi lige have den til at hoppe selvom der allerede er klikket...

function makeBold (hvad) {
  if(!forrige){
    document.getElementById(hvad).style.fontWeight = "bold";
    forrige = hvad;
    jump("menu"+hvad.substring(1,2))
  }else if(forrige&& forrige!=hvad){
  document.getElementById(forrige).style.fontWeight = "normal";
  document.getElementById(hvad).style.fontWeight = "bold";
  jump("menu"+hvad.substring(1,2))
  forrige = hvad;
  }
}
Avatar billede medions Nybegynder
13. februar 2003 - 13:04 #8
hmm så siger den forrige er undefined...

//>Rune
Avatar billede medions Nybegynder
13. februar 2003 - 13:06 #9
ok, der manglede kun:
var forrige = false;

//>Rune
Avatar billede medions Nybegynder
13. februar 2003 - 13:09 #10
nikolaj! Du er guden ham selv til JavaScript!!!

Læg et svar og du får meget fortjente points!

//>Rune
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 13:18 #11
No problemos Gringo :))
Avatar billede medions Nybegynder
13. februar 2003 - 13:25 #12
Hmm lige en sidste ting nikolaj nu har jeg har dig!

Hvordan piller jeg m'et ud af en streng?

For jeg skal kun bruge selveste tallet i denne funktion, og talet løber over et 2 sifret tal!

    function ShowPage(ID) {
        parent.document.Indexer.location.href = 'Indexer.asp?SiteID=' + ID.substring(1,2);
    }

//>Rune
Avatar billede pelkjaer Nybegynder
13. februar 2003 - 13:42 #13
Jaja, jeg er ikke så hurtig som nikolaj, men denne er er nu også raffineret

function iBold(id) {
  if (document.getElementById) {
    document.getElementById(id).style.fontWeight = 'bold';
    }
}

function iNormal(id) {
  if (document.getElementById) {
      document.getElementById(id).style.fontWeight= 'normal';
    }
}

function makeBold(spanID){
theSpans = new Array("id1","id2","id3","id4");
  for(var count = 0; count < theSpans.length; count++)
    if (spanID != theSpans[count]) iNormal(theSpans[count]);
    iBold(spanID);
}

<span onclick="makeBold(this.id)" id="id1" style="font-weight:normal:">hej1</span><br>
<span onclick="makeBold(this.id)" id="id2" style="font-weight:normal:">hej2</span><br>
<span onclick="makeBold(this.id)" id="id3" style="font-weight:normal:">hej3</span><br>
<span onclick="makeBold(this.id)" id="id4" style="font-weight:normal:">hej4</span><br>
Avatar billede medions Nybegynder
13. februar 2003 - 14:19 #14
Here it was..

function ShowPage(ID) {
        parent.document.Indexer.location.href = 'Indexer.asp?SiteID=' + ID.substring(1, ID.length);

    }

-tak til Pelkjaer! ;o)

//>Rune
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