перебор 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, время: 02:23. |