Вам нужно переместить тело цикла в отдельную функцию, которая принимает i
в качестве параметра.
Вы можете использовать обычную функцию, например:
for(var i=0; i<10; i++) {
makeCopy(i);
}
function makeCopy(i) {
var ts = $('#<span></span>').clone().click(function(){
alert(i);
});
}
Вы также можете использовать встроенный метод, например так: (остерегайтесь запутанного синтаксиса)
for(var i=0; i<10; i++) {
(function(i) { //Note i parameter
var ts = $('#<span></span>').clone().click(function(){
alert(i);
});
...
})(i); //Note i parameter
}