| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > выборочная анимация |
| Автор: minimalist 18.9.2010, 20:33 | ||
есть вариант более правильного кода???? Этот как-то не правильно работает |
| Автор: Amphiluke 18.9.2010, 20:54 | ||
Вы намеренно не закрываете теги (p, form)?
|
| Автор: minimalist 18.9.2010, 21:09 |
| ну <p> не обязательно....а вот за все остальное спасибо!!!!!!!! |
| Автор: magelan 18.9.2010, 21:45 | ||
не в упрек, а красоты ради...
|
| Автор: Amphiluke 19.9.2010, 08:10 | ||||
Дак зачем же два цикла подряд в таком случае? Это неэффективно…
Да и не факт, что картинки всегда будут иметь названия, которые можно будет перебрать в цикле. Добавлено через 6 минут и 51 секунду Кстати, если вспомнить, что метод push возвращает новую длину массива, можно записать цикл предзагрузки и так:
|
| Автор: minimalist 19.9.2010, 12:18 | ||
Amphiluke вы не могли бы объяснить действие кода в imgs[imgs.push(new Image()) - 1]????!!!!!!!!! |
| Автор: Amphiluke 19.9.2010, 12:28 | ||
Эээ. А что конкретно не ясно? Я уже написал выше: метод push объекта Array добавляет в конец массива новый элемент и возвращает новую длину массива с учетом добавленного элемента. Поэтому в квадратных скобках после этого получается: imgs[новая_длина - 1]. Это и есть обращение к последнему добавленному элементу (new Image()). Поэтому можно сразу получить доступ к его атрибуту src. Вот и получается запись
Добавлено через 6 минут и 29 секунд P.S. Этим, конечно, не стоит злоупотреблять. Код должен оставаться читабельным, поэтому краткость не должна быть в ущерб ясности кода. |
| Автор: minimalist 19.9.2010, 12:45 |
| тогда почему -1.....а не +1....по моей логике...если добавляет новый элемент в массив..и соответственно новая длина массива...то + или я чего-то не понимаю???? |
| Автор: Amphiluke 19.9.2010, 12:49 |
| Массив индексируется с нуля. Поэтому последний элемент всегда имеет индекс, на единицу меньший, чем длина массива. Добавлено через 1 минуту и 41 секунду Это во-первых. А во-вторых, метод push возвращает длину уже с учетом добавленного элемента. |
| Автор: minimalist 19.9.2010, 12:52 |
| |