Jump to content
php.lv forumi

Variabļa vērtību pārvērst par variabļa nosaukumu...


Java

Recommended Posts

Bāc, triviāla lieta, pat kauns, ka nezinu, bet nav sanācis veidot uz JavaScript!

 

Tātad, kā lai dabū sekojoši, līdzīgi kā php ir:

$foo = "anna";

${$foo} = "lagzdiņa";

// sanāk, ka izveidojas variablis $anna = "lagzdiņa", ja nemaldos....

 

Kā to pašu dabūt uz JavaScript?

Link to comment
Share on other sites

  • Replies 30
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Tik tāl es pats tiku... Ir vēl viens paņēmiens arī...

 

Bet man tagad interesē sekojoši. Pieņemsim, ka no piemēra, "anna" ir "display".

 

Tagad kā ielikt to iekš:

 

document.getElementById('elem1').style.[te ir tā anna jeb display] = 'none';

 

?

Link to comment
Share on other sites

Beigās man sanāca itin noderīga JavaScript funkcija darbībā ar elementa style propertijiem - notestēta jau uz 5 populārākajiem pārlūkiem (FF3, IE6, IE7, Opera9.5, Safari3.1.2), varbūt kādam arī noder:

 

function changeStyle(id,property,value) {
 window['prop'] = property;
 if (document.getElementById(id)) {
if (document.getElementById(id).style[prop]==value) {
  document.getElementById(id).style[prop]='';
} else {
  document.getElementById(id).style[prop]=value;
}
 }
 window['prop'] = undefined;
}

Link to comment
Share on other sites

window['prop'] , lai nav jāizpilda eval().

 

Lab, vari likt arī window['tempProp'] - izskatās precīzāk tomēr...

 

nu jā, var uzrakstīt funkcijas sākumā:

 

var elem = document.getElementById(id);

 

un turpmāk lietot tikai mainīgo elem

Link to comment
Share on other sites

imho toggle nozīmē ko tādu kas mainās - ieslēdzas, izslēdzas, piemēram. Tieši to tava funkcija dara - vai nu uzstāda to value, vai arī nomet nost.

change nozīmētu ko tādu, kas vienmēr uzstādītu to vērtību - tb el.style[property] = value; bez ierunām.

Link to comment
Share on other sites

Vispār vēl problēma varētu būt, ka elementam jau ir attiecīgais stils, kas ir uzstādīts stila failā. Tad JS neredz to vērtību. JS redz tikai tās vērtības, kas ir iekš inline style taga, un ko pats ir uzstādījis (JS uzstāda stilu caur inline, tāpēc pats redz).

Link to comment
Share on other sites


×
×
  • Create New...