Продолжим разбор остальных методов объекта HelpeR.
Следующий метод это lenta. Он отвечает за создание ленты с фото и их описаниями а так же за подключение эффекта HR_Blackout к фотографиям ленты.
Сначала создается сама лента это элемент div. Далее устанавливаются все его свойства.
показать чистый исходник в новом окнеСкрыть/показать номера строкпечать кода с сохранением подсветки
1 this.lenta_DIV = document.createElement('div');
2 this.lenta_DIV.setAttribute('id','HR_lenta_DIV');
3 var i,c,z,pic_len = this.pics_array.length;
4 this.lenta_DIV.style.overflow = 'hidden';
5 this.lenta_DIV.style.width = (this.lenta_pics * parseInt(this.pic_params['width']) + parseInt(this.pic_params['padding']) * this.lenta_pics * 2 + 2) + 'px';
Помните про свойство overflow и ширину ленты, про которые я описывал в html версии фото ленты.
Далее в цикле создаются рисунки которые имею ссылки на большой вариант с массива ln_big_photos, а внутри объекта это массив this.pics_big_array.
Обратите внимание, что при создании ряда фотографий, учитывается сколько фото должно быть в ленте (свойство this.lenta_pics), как только количество достигает этой цифры, остальные фото получают значение margin-right с минусовым показателем, что бы фото ушло за ленту и ее не было видно. После проверяется подключен ли эффект HR_Blackout если да, то ссылка получает класс HR (это требуется для этого эффекта). И в конце цикла в ссылку вставляется рисунок как дочерний узел, а замет уже ссылка вставляется в див ленты. После полного окончания проверяется если включен эффект HR_Blackout, то он подгружаются и под конец весь этот див вставляется в центральную ячейку таблицы.
показать чистый исходник в новом окнеСкрыть/показать номера строкпечать кода с сохранением подсветки
01 for(z=0; z < pic_len; z++) {
02
03 (img = new Image()).src = this.pic_dir + this.pics_array[z];
04 for(var c in this.pic_params) {
05 eval("img.style." + c + " = '" + this.pic_params[c] + "';");
06 }
07
08 if(z > this.lenta_pics - 1) {
09 img.style.marginRight = '-' + (parseInt(this.pic_params['width']) + parseInt(this.pic_params['padding']) * 2) + 'px';
10 }
11
12 var ahref = document.createElement('a');
13 ahref.setAttribute('title',this.pics_title[z]);
14 ahref.setAttribute('target','_blank');
15 ahref.href = this.pic_dir + this.pics_big_array[z];
16 /* HR Blackout */
17 if(this.HR_Blackout) {
18 ahref.className = 'HR';
19 }
20 /* HR Blackout */
21 ahref.appendChild(img);
22 this.lenta_DIV.appendChild(ahref);
23 }
24
25 if(this.HR_Blackout) {
26 document.write("