javascript
  [ Ignoră ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08

salut, cine ma poate ajuta in legatura cu un cod javascript?

Profil
 
  [ Ignoră ]   [ # 1 ]
Avatar
RankRankRankRank
Sr. Member
Din: Cluj-Napoca
Macuser din: 26.01.06

ar fi mai bine daca expui direct problema

 Semnătură 

Mcintoshing…

Profil
 
  [ Ignoră ]   [ # 2 ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08

ok…

am urmatorul script:

function showlayer(layer){
document.getElementById(‘submeniu1’).style.display=“none”;
document.getElementById(‘submeniu2’).style.display=“none”;
document.getElementById(‘submeniu3’).style.display=“none”;
var myLayer = document.getElementById(layer).style.display;
if(myLayer==“none”){
  document.getElementById(layer).style.display=“block”;
} else {
  document.getElementById(layer).style.display=“none”;
}
}

si html:

<li><a >SELF-PORTRAIT</a></li>
<li><a >THE OBJECT</a></li>
<li><a >STUDIES FOR THE CHANGE</a></li>

problema este ca dupa ce deschid linkurile, gen submeniu, nu le mai pot inchide, tot cu click.

Profil
 
  [ Ignoră ]   [ # 3 ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08

html din nou:

a href=’#’ onclick=” [removed]  howlayer(‘submeniu1’)”>SELF-PORTRAIT
a href=’#’ onclick=” [removed]  showlayer(‘submeniu2’)”>THE OBJECT
a href=’#’ onclick=” [removed]  showlayer(‘submeniu3’)”>STUDIES FOR THE CHANGE

Profil
 
  [ Ignoră ]   [ # 4 ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08
vladspy90 - 07 Septembrie 2009 06:26 AM

html din nou:

a href=’#’ onclick=” [removed]  howlayer(‘submeniu1’)”>SELF-PORTRAIT
a href=’#’ onclick=” [removed]  showlayer(‘submeniu2’)”>THE OBJECT
a href=’#’ onclick=” [removed]  showlayer(‘submeniu3’)”>STUDIES FOR THE CHANGE


la removed scrie javascript

Profil
 
  [ Ignoră ]   [ # 5 ]
Avatar
RankRankRankRank
Sr. Member
Din: Cluj-Napoca
Macuser din: 26.01.06

nu stiu js asa ca am sa presupun ca daca aplici un stil in felul ala face ce iti trebuie tie.

inteleg din codul tau ca atunci cand deschizi un meniu se inchid toate celelalte. iti propun sa uiti de celelalte si sa incerci doar cu cel pe care apesi. ce ai tu acum reseteaza stilurile la “none” si astfel conditia de la sfarsit este intotdeauna adevarata, deci “else” nu se executa niciodata, dar se executa intotdeauna prima conditie care iti deschide submeniul. daca apesi pe alt sumbmeniu ar trebui sa ti-l inchida pe precedentul.

function showlayer(layer){

if (document.getElementById(layer).style.display == “none”){

document.getElementById(layer).style.display=“block”;
}
else {
document.getElementById(layer).style.display=“none”;
}

}

 Semnătură 

Mcintoshing…

Profil
 
  [ Ignoră ]   [ # 6 ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08
.ral:cr - 07 Septembrie 2009 05:23 PM

nu stiu js asa ca am sa presupun ca daca aplici un stil in felul ala face ce iti trebuie tie.

inteleg din codul tau ca atunci cand deschizi un meniu se inchid toate celelalte. iti propun sa uiti de celelalte si sa incerci doar cu cel pe care apesi. ce ai tu acum reseteaza stilurile la “none” si astfel conditia de la sfarsit este intotdeauna adevarata, deci “else” nu se executa niciodata, dar se executa intotdeauna prima conditie care iti deschide submeniul. daca apesi pe alt sumbmeniu ar trebui sa ti-l inchida pe precedentul.

function showlayer(layer){

if (document.getElementById(layer).style.display == “none”){

document.getElementById(layer).style.display=“block”;
}
else {
document.getElementById(layer).style.display=“none”;
}

}


problema este ca acum le pot deschide pe toate si se incaleca divurile.

Profil
 
  [ Ignoră ]   [ # 7 ]
Avatar
RankRankRankRank
Sr. Member
Din: Cluj-Napoca
Macuser din: 26.01.06

ar trebui sa ai un array cu toate divurile si sa iterezi prin ele. cand ajungi la divul == cu layer faci ce ti-am dat eu acum, pentru celelalte divuri il setezi pe “none”
mai poti sa tii intr-o variabila ultimul layer apasat, iar daca urmatorul este == cu cel din memorie setezi iarasi la “none” si iti continui treaba cu if-ul de mai sus.

 Semnătură 

Mcintoshing…

Profil
 
  [ Ignoră ]   [ # 8 ]
RankRank
Jr. Member
Din: Bucuresti
Macuser din: 05.03.08
.ral:cr - 07 Septembrie 2009 08:18 PM

ar trebui sa ai un array cu toate divurile si sa iterezi prin ele. cand ajungi la divul == cu layer faci ce ti-am dat eu acum, pentru celelalte divuri il setezi pe “none”
mai poti sa tii intr-o variabila ultimul layer apasat, iar daca urmatorul este == cu cel din memorie setezi iarasi la “none” si iti continui treaba cu if-ul de mai sus.

am reusit.. am facut pentru fiecare o functie, in acre am setat celelalte layere == none si merge perfect

Profil
 
   
 
 
‹‹ HELP image !!!      Logo vectorial Sibiu ››