Avatar billede mrfunder Nybegynder
14. marts 2007 - 15:34 Der er 20 kommentarer og
1 løsning

Hjælp til skrivning af javascript functions kode

<script>
function toggleHotel(id,unique) {

//hvis unique = 1 gør dit;
document.getElementById("screen").innerHTML = unique;

elseif
// unique, gør noget andet
document.getElementById("screen2").innerHTML = unique;

else
//hvis unique = 3, gør noget tredje

}
</script>


Min funktion kører ved et onclick;
onclick=\"toggleIs('$name,$unique');\"

Altså det jeg mangler hjælp til er at skrive min javascript kode med if's og så printe min php variabel unique ud igennem min getelementbyid
Avatar billede roenving Novice
14. marts 2007 - 15:38 #1
Hvad skal id bruges til ?-)

-- og hvordan ser de elementer ud, du godt vil skrive til ?o]

-- skal nemlig lge vide, om man kan skrive valid DOM-kode, eller der benyttes det hack, du har lagt op til ...
Avatar billede mrfunder Nybegynder
14. marts 2007 - 15:45 #2
Mine elementer er divs, og id er også navnet på en div. Der skal skrives til to forskellige divs, men det undlod jeg så at fortælle :-)
Avatar billede roenving Novice
14. marts 2007 - 15:57 #3
Hvorfra ved man, at det er den div, man skal skrive til ?-)

-- men et eksempel:

<script type="text/javascript">
function toggleIs(id,unique){
  switch(unique){
    case 1:
      document.getElementById('screen').firstChild.nodeValue = unique;
      break;
    case 2:
      document.getElementById('screen2').firstChild.nodeValue = unique;
      break;
    default:
      alert("hg ,jhgj jh hg  ll ");
  }
}
</script>

-- diverne skal så have noget inde i sig fra start, om ikke andet et no-break-space:

<div id="screen">&nbsp;</div>
<div id="screen2">&nbsp;</div>
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:08 #4
Jeg har valgt at omskrive min kode lidt;
Umiddelbart får jeg bare 'alert' hvér gang

function toggleIs(id,unique) {
        switch(unique){
            case 1:
        document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = unique;
            break;
            case 2:
              document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = unique;
            break;
              default:
              alert("unique");
}
}
print "<div id=\"info\" class=\"box\" style=\"float:right;width:28%;\"><h2><div id=\"titel\">&nbsp;</div></h2><div class=\"content\" id=\"content\">&nbsp;</div></div>";


print "<div id=\"$id\" class=\"star\" title=\"$name\" style=\"position:absolute; left:$cor_x; top:$cor_y; cursor: pointer;\" onclick=\"toggleIs('$name,$unique');\">\n</div>";
Avatar billede roenving Novice
14. marts 2007 - 16:14 #5
Hvordan ser dine værdier ud ?-)

-- altså prøv at vise Vis kilde fra browseren for diven, der klikkes på ...
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:19 #6
Den fungerer fint, altså med først id (som indeholder et navn, tekst) og så ellers det id (unique)

Taget fra vis kilde:
onclick="toggleHotel('Romela blanca,1');">
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:19 #7
onclick="toggleIs('Romela blanca,1');"> - korrekt
Avatar billede roenving Novice
14. marts 2007 - 16:24 #8
Så har du ikke to værdier, men kun een ...

Prøv f.eks.

print "<div id=\"$id\" class=\"star\" title=\"$name\" style=\"position:absolute; left:$cor_x; top:$cor_y; cursor: pointer;\" onclick=\"toggleIs('$name',$unique);\">\n</div>";
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:26 #9
Ny copypast fra vis kilde (linket er nu ændret);
onclick="toggleIs('Romela blanca',1);">

function toggleIs(id,unique) {
        switch(unique){
            case 1:
        document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = unique;
            break;
            case 2:
              document.getElementById('titel').firstChild.nodeValue = id;
        document.getElementById('content').firstChild.nodeValue = unique;
            break;
              default:
              alert("+unique");
}
}

Den giver desværre stadig error selvom jeg klikker på forskellige elementer med forskellige værdier
Avatar billede roenving Novice
14. marts 2007 - 16:33 #10
Kan du linke til et eksempel ?-)
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:35 #11
Ville det være muligt at linke det udenfor dette site eventuelt? Der er en grund til jeg sidder og døber mine funktioner anderledes ;)
Avatar billede roenving Novice
14. marts 2007 - 16:43 #12
Det er ligegyldigt, hvor det ligger, bare man kan se noget sammenhændende kode, der ligner det, du bruger !-)
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:48 #13
Nu bliver det yderst svært for mig; så skal jeg sidde og bygge siden om- da den sammenligner ting fra databasen som du skal bruge login for at kunne se
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:50 #14
Og vi lukker! der mangler en break; efter den almindelige default:

Vær' venlig at smide et svar :-)
Avatar billede roenving Novice
14. marts 2007 - 16:54 #15
Det lyder underligt ...

Men velbekomme '-)
Avatar billede mrfunder Nybegynder
14. marts 2007 - 16:57 #16
Tak for hjælpen endnu en gang- og ville det være muligt jeg kunne henlede din opmærksomhed på: http://www.eksperten.dk/spm/767831?
Avatar billede roenving Novice
14. marts 2007 - 17:11 #17
-- er det ikke bedre at bruge en gif til at blinke ?-)

-- og tak for point ;~}
Avatar billede mrfunder Nybegynder
14. marts 2007 - 17:26 #18
Den skal ikke blinke, den skal fade ;)
Avatar billede roenving Novice
14. marts 2007 - 17:28 #19
Det kan en inkrementel gif jo også ...
Avatar billede mrfunder Nybegynder
14. marts 2007 - 18:36 #20
inkrementel- det ord har jeg alligevel aldrig hørt før.. en animeret gif, eller?
Avatar billede roenving Novice
15. marts 2007 - 08:48 #21
Ja !-)
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