перебор id циклом
Возникает проблема, когда я циклом хочу перебрать все ид и присвоить им при клике только 1 функцию(по клику внутрь блока ставится картинка), но таким методом не работает
for (i=1;i<=18;i++) {
$('id'+i).click( function () {
$('id'+i).html('<img src="cross.png">')
})
}
|
|
Вообще в данном случае юзать this проще.
|
а сейчас что не так?
block = $('div[id^=id]')
function crossover(divs) {
for(var i=0; i<divs.length; i++) {
divs[i].onclick = function() {
return function() { divs[i].innerHTML('<img src="cross.png">') }
}
}
}
|
А вы статью прочитали?
|
Да, и насколько я понял, чтобы функция сохранялась для каждого элемента, она должна состоять внутри другой, или нет? я взял из примера код
|
Цитата:
Цитата:
<script type="text/javascript">
window.onload = function() {
var fragment = document.createDocumentFragment(), i = 10;
while(i--) {
div = document.createElement('div');
div.innerHTML = 'click';
div.onclick = (function(i) {
return function() {
this.innerHTML = i;
}
})(i);
fragment.appendChild(div);
}
document.body.appendChild(fragment);
};
</script>
|
| Часовой пояс GMT +3, время: 00:48. |