interCaros = new Carousel("id div в который нужно вывести");
interCaros.format = function(item) {
if ( ( typeof item == "undefined") || ( !item ) ) return "";
tmps = "<div class='dojoxCarouselItem'><div class='goodsImgDiv' style='height:"+(this.itm_height-60)+"px;' onclick='window.location=\"/interior/"+item.interid+"\"' "+
"title='можно перейти на страницу интерьера'>"+
"<img src='/tn"+item.mainp+"' alt='' style='max-width:"+(this.itm_width-30)+"px;max-height:"+(this.itm_height-70)+"px;'/></div>"+
"<br/><span>"+item.iname+"</span></div>";
return tmps;
}
interCaros.id = "interCaros";
interCaros.itm_height = 150;
interCaros.url = "/urlurl;
interCaros.query = {a:"{aid:"+item_aid+"}"};
interCaros.startup();
Вот так задается обычная карусель, но мне нужно, чтобы она подгружалась по клику в нужный блок, который открывается. Есть таблица, если кликнуть на строку, то строка выделяется, ищется соседний скрытый div, берется его id. Потом выводится эта карусель по этому id в нужный div. Дело в том, что таких divов и каруселей может быть много и они могут работать независимо друг от друга одновременно.
Я сделал это вот так.
$(function () {
$('#confTable div.button').click(function() {
$(this).toggleClass('selected');
var checkElement = $(this).next();
var queryId = checkElement.find('div').attr('id');
if (typeof confCaros == "undefined")confCaros = new Array();
confCaros[queryId] = new Carousel(queryId);
confCaros[queryId].itm_height = 100;
confCaros[queryId].itm_width = 70;
confCaros[queryId].format = function(arg) {
if ( arg ) return "<div class='goodsItem'> "+"<img src='"+"/tn"+arg.mattex+"' class='gridImg' "+
"alt='' title='"+arg.matgname+" ("+arg.matgcode+")\n"+arg.umat+(arg.size?"\n3D-данные: размер - "+arg.size+"Mb":"")+
"'><br/>"+"<span>"+arg.matgname+" ("+arg.matgcode+") "+arg.umat+"</span><br/>";
return "";
}
confCaros[queryId].id = queryId;
confCaros[queryId].url = "/mat";
confCaros[queryId].query = {abs:abstract_id,start:0,count:5};
confCaros[queryId].startup();
checkElement.stop().animate({'height':'toggle'}, 300);
if((checkElement.is('div.carusel')) && (checkElement.is(':visible'))) {
return false;
}
});
});
Но не так все равно. Подскажите, как это можно реализовать. Надеюсь, что хоть что-то понятно...