Подскажите, что я сделал не так...
Описывается реакция на событие onchange, элементы берутся через getElementsByClassName. (в моем случае получается 2 массива и в каждом по 2 элемента).
var mailandpass = document.getElementsByClassName('jsinputlog'); var ptext = document.getElementsByClassName('jsplog'); вот так все работает: mailandpass[0].onchange = function(){ if(mailandpass[0].value==""){ ptext[0].style.removeProperty("color"); ptext[0].style.removeProperty("font-size"); ptext[0].style.removeProperty("margin"); }else{ ptext[0].style.color = "#cc1f1f"; ptext[0].style.fontSize = "1.5vw"; ptext[0].style.margin = "3% 17%"; } } (соответственно и с индексом 1 тоже работает) __________________________________________________ _____________ а вот так не работает... может тут что то несуразное налепил, не так давно изучаю... Подскажите кто может :) var i; for(i=0; i < mailandpass.length; ++i){ mailandpass[i].onchange = function(){ if(mailandpass[i].value==""){ for(i=0; i < ptext.length; ++i){ ptext[i].style.removeProperty("color"); ptext[i].style.removeProperty("font-size"); ptext[i].style.removeProperty("margin"); } }else{ for(i=0; i < ptext.length; ++i){ ptext[i].style.color = "#cc1f1f"; ptext[i].style.fontSize = "1.5vw"; ptext[i].style.margin = "3% 17%"; } } } } |
Fomax,
if(mailandpass[i].value==""){ потому что i в строке 4 всегда 2 -- а такого элемента у вас нет. |
:cray: косяком пошли ...
http://javascript.ru/forum/misc/6505...tml#post429524 |
Еще вот так можно сократить
mailandpass[0].onchange = function(){ var s = ptext[0].style; // style is object if(mailandpass[0].value){ s.color = "#cc1f1f"; s.fontSize = "1.5vw"; s.margin = "3% 17%"; } else { s.color=""; s.fontSize=""; s.margin=""; } } |
Часовой пояс GMT +3, время: 05:32. |