Сообщение от danik.js
|
Все правильно понял )
|
Не, судя по вопросу - ничего не понял, просо заюзал готовый код.)
Сообщение от platedz
|
Не ясно только, почему не выходит так
for(var i=0; i<document.getElementsByName("my_name").length; i++)
{
document.getElementsByName("my_name")[i].onkeyup = function(x)
{
console.log(x)
}(i)
}
Буду благодарен за разъяснения
|
Это равносильно:
for(var i=0; i<document.getElementsByName("my_name").length; i++)
{
function tempFunc(x){
console.log(x)
}
var tempVar = tempFunc(i);
document.getElementsByName("my_name")[i].onkeyup = tempVar;
}
Т.о. функция tempFunc выполняется сразу же(при этом записывая в console.log i из текущей итерации), а в onkeyup попадает результат её исполнения. Т.к. в temp нет return - она возвращает undefined, соответственно onkeyup == undefined, и при событии ничего не происходит.