Передать в функцию click значение из for 
		
		
		
		День добрый коллеги.  
	Вопрос из области для новичков, но ответ так и не смог найти. Есть код (выдраный из контекста), еще я использую raphael.js 
var sin_2 =0;
var paper_all = new Array(); 
function drawZ (){
paper.clear();
var all  = id_ar.length-1;
sin_2+=0.007;
for(i=0;i<=all;i++){
var sin = sin_2 + (0.7*i);
var x = Math.sin(sin)*radius+center.x;
var y = Math.cos(sin)*radius+center.y;
paper_all[i] = new Object;
paper_all[i].p = paper.text(x,y,number_ar[i]); 
paper_all[i].p.attr("font-size", "30");
paper_all[i].id  = i;
paper_all[i].p.click(function() {
//hand(id_ar[i]);
alert(paper_all[i].id ); // вот так не работет
});
}//for
}//end drawZ
Задача передать в alert значение i на момент инкреминации (счетчик цикла), если написать типа alert(i); то будет i на момент окончание цикла (i=0;i<9;i++) тоесть 9 Как сделать счелкаешь на элементы и будет 1 на первом, 2 на втором и т.д.? Я уже второй раз сталкиваюсь, да и если что то другое вы видите можно лучше написать я только за.  | 
	
		
 Цитата: 
	
  | 
	
		
 А можно для меня разжевать - на моем примере? Там ни где нет ситуации когда функция генерит и навешивает обработчики по for. Для одного элемента = вызова и у меня работает. 
	 | 
	
		
 Наверно прозрачней  всего заполнить атрибут  data= на теге 
	Хотя можно конечно к объекту добавить новое свойство  | 
	
		
 Data???? Это от куда взялось (у меня там нет тэгов). Пожалуста мысли оформляйте в код, то есть подставил работает не работает. А так это просто рассуждения. 
	 | 
	
		
 Цитата: 
	
 Цитата: 
	
 Цитата: 
	
 Цитата: 
	
  | 
	
		
 flyfrog, 
	тут же всё разжёвано Пример ошибочного использования 
var sin_2 =0,
    paper_all = new Array();
function drawZ (){
paper.clear();
var all  = id_ar.length;
sin_2+=0.007;
for(i=0;i<all;i++){
var sin = sin_2 + (0.7*i);
var x = Math.sin(sin)*radius+center.x;
var y = Math.cos(sin)*radius+center.y;
paper_all[i] = new Object;
paper_all[i].p = paper.text(x,y,number_ar[i]);
paper_all[i].p.attr("font-size", "30");
paper_all[i].id  = i;
paper_all[i].p.click((function(a) {
return function ()
{
  alert(paper_all[a].id );
}
})(i));
}
}
 | 
	
		
 BETEPAH, 
	:-? чёто я с кодом поспешил сорри  | 
	
		
 Спасибо. Хоть вы и сказали что я знал и ни капли не помогли спасибо. Решение данного "глюка" у меня есть но оно  не красивое (для изящнего js) я думал другие уже придумали как это решается - красиво. 
	 | 
	
		
 рони, 
	:cray:  | 
| Часовой пояс GMT +3, время: 09:29. |