Помогите с кодом
Помогите разобраться с кодом
Не пойму как с его помощью строится таблица
function GetGalleryHTML(arr, hor_count, width, height)
{
//реализация галлереи в виде таблицы
var html = "";
for(var i = 0 ; i < arr.length ; )
{
html += "";
for(var j = 0 ; j < hor_count ; ++j, ++i)
{
if(i < arr.length)
html += "";//выводим ячейку с изображением
else
html += "";//выводим пустую ячеку таблицы
}
html += "";
}
html += "";
return html;
}
|
А чё, правда чтоли строится?
|
Цитата:
var html = ""; html += ""; |
Цитата:
var html = '<table width="' + width + '" height="' + height + '">'; дальше пробуйте сами. |
Сюда я так понимаю нужно вставить путь к картинке
if(i < arr.length) html += "";//выводим ячейку с изображением наверно так: html += "<img src="img/1.jpg" name="1"/>" но он выводит заданную, а мне нужно достать с массива такой вариант не катит html += "<img src="arr[i]" name="1"/>" или такой html += '<img src="img/" + count + ".jpg" name="1"/>' Тыкаю пальцем в небо, как правильно будет подскажите? |
у тебя в цикле i и j меняются. Названия картинок походу в массиве переданном хранятся, вот и экспериментируй, я же не знаю что там за массив.
Цитата:
html += '"<img src="' + arr[i] + '" name="1"/>"'; |
Цитата:
document.write(GetGalleryHTML(images, 5, 100, 100)); и она явно не понимает что должна быть 100px*100px; может это не правильно.
function GetGalleryHTML(arr, hor_count, width, height)
{
//реализация галлереи в виде таблицы
var html = '<table width="' + width + '" height="' + height + '">';
for(var i = 0 ; i < arr.length ; )
{
// по логике вешей я ниже должен вставить td
html += '<td>';
for(var j = 0 ; j < hor_count ; ++j, ++i)
{
if(i < arr.length)
html += "";//выводим ячейку с изображением
else
html += "";//выводим пустую ячеку таблицы
}
html += "</td>";// закрыть td???
}
html += "</table>";//закрыть table ???
return html;
}
|
Ага, то размеры картинки. Значит вот это
html = '<table width="' + width + '" height="' + height + '">'; отбой. Просто пиши html = '<table>'; А вот эту часть: width="' + width + '" height="' + height + '">'; выставляй каждой картинке. |
Класс. Спасибо вроде работает.
Вот мне интересно можно ли onmousedown или onclik затем работать с этими изображениями (увеличивать). |
Пробую передать в функцию параметры, чтоб вывести при клики полное изображение
html += '<img src="' + arr[i] + '" width="' + width + '" height="' + height + '" name="'+i+'" onmousedown="mouseover('+ arr[i] +','+ i +');"/>';
function mouseover (index, i)
{
document.images["'+i+'"].src = img[index].src;
}
Возможно ли так сделать, что то не работает. |
Так а что ты делаешь - тот же src переприсвоил.
Вариант - надо узнать реальные размеры и их присвоить: var im = new Image(); im.src = Существующая_картинка.src; Существующая_картинка.width = im.width Существующая_картинка.height = im.height im.width, im.height - родные размеры. |
Цитата:
какой то параметр который будет изменятся. А как мне потом выводить? |
Пытаюсь по id при клике вывести например другое изображение (вообще в итоги хочу чтоб рядом просто выводилось в полный размер, но пока так)
<script type="text/javascript">
var images = new Array ("img/1.jpg", "img/2.jpg", "img/3.jpg", "img/4.jpg", "img/5.jpg", "img/6.jpg",
"img/7.jpg", "img/8.jpg", "img/9.jpg", "img/10.jpg", "img/11.jpg", "img/12.jpg",
"img/13.jpg", "img/14.jpg", "img/15.jpg", "img/16.jpg", "img/17.jpg", "img/18.jpg");
document.write(GetGalleryHTML(images, 4, 80, 80));
function GetGalleryHTML(arr, count, width, height)
{
//реализация галлереи в виде таблицы
var html = '<table>';
for(var i = 0 ; i < arr.length ; )
{
html += "<tr>";
for(var j= 0 ; j < count ; ++j, ++i)
{
html += "<td>";
if(i < arr.length)
html += '<img src="' + arr[i] + '" width="' + width + '" height="' + height + '" id="'+i+'" onclick = "imgchange();" />';
else
html += "";
html += "<td>";
}
html += "</tr>";
}
html += '</table>';
return html;
}
function imgchange() {
document.getElementById("2").scr= img/15.jpg;
}
</script>
не хочет работать с функцией imgchange(). |
document.getElementById("2").src= "img/15.jpg"; кавычки нужны
да и наверно onclick = "imgchange();" onclick = "imgchange(this.src);" и
function imgchange(src) {
document.getElementById("2").src=src;
}
|
Спасибо все работает
|
| Часовой пояс GMT +3, время: 05:11. |