Код работает не так как задумал. Обработчик onclick
Здравствуйте. Вот код:
if (window.addEventListener) { window.addEventListener('load', clickHandler); } else if (window.attachEvent) { window.attachEvent('onload', clickHandler); } function clickHandler() { var data = [ ['checkbox_title', 50], ['checkbox_message', 100] ]; var element; var height; for (var i = 0; i<data.length; i++) { element = data[i][0]; height = data[i][1]; document.getElementById(element).onclick = function() { alert(height); } } } Он выводит постоянно при клику на нужный мне обьект, цифру 100, хотя в 1 случае должен 50, ну а на 2 обьект 100, а он всегда 100 выводит. И такой ещё вопрос хочу задать, можно ли как передать параметры функции, когда мы вещаем обработчик события через object.click или window.addEventListener. |
|
С вопроса "Почему это не работает?" люди обычно начинают изучение замыканий.
function addEvents(divs) { for(var i=0; i<divs.length; i++) { divs[i].innerHTML = i divs[i].onclick = function() { alert(i) } } } Очень понравилась вот эта строчка:). Спасибо, разобрался. |
Часовой пояс GMT +3, время: 04:38. |