Сообщение от Teledrug
|
menus[i].onClick=ps(menus[i].href);
|
1. Вы вызываете функцию
ps
и присваиваете свойству
onClick
результат выполнения этой функции, т.е.
undefined
.
function ps (k) {
//alert (k);
}
var result = ps("…");
alert(result);
// Все равно, что:
//menus[i].onClick = undefined;
Нужно передавать ссылку на функцию:
menus[i].onClick = ps;
Аргументы в обработчик события, как в функцию, передать не получится. Об этом дальше.
2. Обработчику события соответствует свойство
onclick
, а не
onClick
. JavaScript регистрозависимый.
menus[i].onclick = ps;
3. Чтобы ваш скрипт работал правильно, нужно будет использовать замыкания
http://javascript.ru/basic/closure#p...-ispolzovaniya
for (var i=0; i<ms.length; i++) {
menus[i].onсlick = function (href) {
return function () {
ps(href);
};
}(menus[i].href);
menus[i].href="javascript:void(0)";
}
4.
http://javascript.ru/unsorted/why_href_js_is_bad