Код работает не так как задумал. Обработчик 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, время: 21:54. |