Обернуть элемент в родительский элемент

Kotex

Создатель
Регистрация
23 Апр 2012
Сообщения
10
Реакции
3
Здравствуйте, уважаемые форумчане!
Есть код:
function getCatItem(item_id,item_pict,item_name,type_h,item_price,item_artno,item_sizes,item_colors, tkan,auth,photoslaider)
{


document.getElementById("model_h").innerHTML = item_name; // артикул f_Name
document.getElementById("type_h").innerHTML = type_h; // тип одежды "Блузка"
document.getElementById("preshow_img").src = item_pict; // большая картинка
document.getElementById("model_artno").innerHTML = item_artno; // артикул

if(tkan.length > 0){
document.getElementById("Tkan").innerHTML = tkan.join(', ');
} else {
document.getElementById("Tkan").innerHTML = '';
}
document.getElementById("parid").value = item_id; // id объекта
//document.getElementById("photomain").value = item_pict; // большая картинка
genTableColorRazmer(item_sizes, item_colors, document.getElementById('ColorRazmer'), auth);
//document.getElementById("len_arr").value = len_arr;

if(auth>0){
document.getElementById("model_price").innerHTML = item_price + ' руб.';
//document.getElementById("model_price").innerHTML = 'по запросу';
}
var photo_len = photoslaider.length;
if(photo_len > 0){
var elem = document.getElementById("models"); // сюда добавляем картинки
elem.innerHTML=''; // удаляем прежние изоражения
photos=new Array();
links=new Array();

for(key in photoslaider)
{
if(key<3) {
img = createelem("img", "photoslider_"+key, elem); // создаем img
img.src = photoslaider[key][0]; // подгружаем картинку
img.name = "photoslider_"+key;
img.setAttribute('onclick',"document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'");
}
photos[key] = photoslaider[key][0];
links[key] = "document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'";


}

}
$('#preshow_img').hide();
$('#loader').show();
$('#preshow_img').load( function() {
$('#loader').hide();
$('#preshow_img').show();
} );

if(photo_len < 2) $('#models').hide(); else $('#models').show();
if(photo_len <= 3) {
$('#models-l').hide();
$('#models-r').hide();
} else {
$('#models-l').show();
$('#models-r').show();
}

window.document.getElementById('popup-layer').style.visibility='visible';
window.document.getElementById('popup').style.visibility='visible';
document.location.href='#anchor';
}

function getCollItem(item_pict, item_models, item_desc, photoslaider)
{


document.getElementById("item_models").innerHTML = item_models; // артикул f_Name
//document.getElementById("type_h").innerHTML = type_h; // тип одежды "Блузка"
document.getElementById("preshow_img").src = item_pict; // большая картинка
document.getElementById("item_desc").innerHTML = item_desc; // артикул

var photo_len = photoslaider.length;
if(photo_len > 0){
var elem = document.getElementById("models"); // сюда добавляем картинки
elem.innerHTML=''; // удаляем прежние изоражения
photos=new Array();
links=new Array();
for(key in photoslaider)
{
if(key<3) {
img = createelem("img", "photoslider_"+key, elem); // создаем img
img.src = photoslaider[key][0]; // подгружаем картинку
img.name = "photoslider_"+key;
img.setAttribute('onclick',"document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'");
}
photos[key] = photoslaider[key][0];
links[key] = "document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'";


}

}
$('#preshow_img').hide();
$('#loader').show();
$('#preshow_img').load( function() {
$('#loader').hide();
$('#preshow_img').show();
} );

if(photo_len < 2) $('#models').hide(); else $('#models').show();
if(photo_len <= 3) {
$('#models-l').hide();
$('#models-r').hide();
} else {
$('#models-l').show();
$('#models-r').show();
}
window.document.getElementById('popup-layer').style.visibility='visible';
window.document.getElementById('popup').style.visibility='visible';
document.location.href='#anchor';
}

function createelem(tag, id, elem){ // создает тег tag c id для родительского элемента HTML
var el=document.createElement(tag);
el.id=id;
if(elem) elem.appendChild(el);
return el;
}
function createtn(str, elem){ // добавляет текст в элемент elem
var tn=document.createTextNode(str);
if(elem) elem.appendChild(tn);
return tn;
}
По результатам отработки скрипта, он в див с ид=models
добавляет фотографии с такой маской:
<img onclick="document.getElementById('preshow_img').src='/netcat_files/95/41/1_0.JPG'" name="photoslider_0" src="***" id="photoslider_0">

Скажите, пожалуйста, как в таком случае обернуть каждую такую картинку в тег <a>...</a>?
Заранее благодарю!
 
Примерно вот так будет: правим вот этот кусок кода
Код:
if(key<3) {
img = createelem("img", "photoslider_"+key, elem); // создаем img
img.src = photoslaider[key][0]; // подгружаем картинку
img.name = "photoslider_"+key;
img.setAttribute('onclick',"document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'");
}

будет примерно так:

Код:
if(key<3) {
a = createelem("a", "link_"+key, elem);
a.href = "твой линк который нужен";
 
img = createelem("img", "photoslider_"+key, a); // создаем img
img.src = photoslaider[key][0]; // подгружаем картинку
img.name = "photoslider_"+key;
img.setAttribute('onclick',"document.getElementById('preshow_img').src='"+photoslaider[key][1]+"'");
}
 
MaxiSoft, ты крут=) спасибо тебе!
А не подскажите еще как добавить такой ссылке class="**"?
Разобрался: делать так: a.className = "**";
 
Уважаемые форумчане, снова вопрос:
Есть вот этот скрипт, что сверху (первый пост), он постоянно "прослушивает" страницу, а есть Для просмотра ссылки Войди или Зарегистрируйся, который работает по принципу on ready, то есть ко всем уже загруженным элементам, что нужно добавить, что бы этот Cloud Zoom постоянно так же "прослушивал" страницу?
 
Назад
Сверху