![]() |
|
||||||||||
|
|||||
|
Доброго времени суток.
1. подскажите плиз как реализовать еффект прокручивания превьюшек. вот пример: http://www.flashrelief.com/thumbgallery/features.html вот тут внизу флешки прокручиваються превьюшки. знаю что ето реализовано просто через маски... ну в упор непонимаю как... может кто на исходник линк даст... покалупать ![]() 2. FLV галерея. подскажите алгоритм ее написания. какие классы тут используються? исходник так же приветствуеться ![]() |
|
|||||
|
хм, я это месяца 1.5 -2 назад тут писал
поищите в поск4е что то типа: перемещение кнопок...
__________________
"We Are The Champions My Friends!" Queen |
|
|||||
|
__________________
"We Are The Champions My Friends!" Queen |
|
|||||
|
Регистрация: Mar 2003
Адрес: Россия, Санкт-Петербург
Сообщений: 565
|
=)) если кто видел аль впомнит простенький пример того же самого только движение и скорость зависит от координат курсора мышы курсор уводим мувик останавливается воть =)) токмо без кнопок =)))
|
|
|||||
|
сейчас пытаюсь зделать фото галерею (хотя бы).
думаю так: 1. создание xml объекта и обработка его onLoad: var xml_file:String = 'gallery.xml';
var xmlData:XML = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load(xml_file);
xmlData.onLoad = function (success){ // check if xml file is loaded well
if(success){
indicator._visible = false;
//trace (xmlData_len);
createXmlArray(boxid);
}else{
indicator.textColor = 0x00FF00;//текчтовое дин. поле отображение состояния.
indicator.text = 'can`t load xml file';
}
}
function createXmlArray(boxId:Number) { //creating array from xml for gallary tag name
var xmlDataTemp:Array = new Array();
if (boxId == 0) {//передаеться 0
var xmlBoxLen = xmlData.firstChild.childNodes[boxId].childNodes.length;
var xmlBox = xmlData.firstChild.childNodes[boxId].childNodes;
var gallName:String;
for (var i = 0; i<xmlBoxLen; ++i) {
gallName = xmlBox[i].attributes.name; // gallery title
xmlDataTemp[gallName] = new Array(); // create array[gallery Name]
for (var aNode:XMLNode = xmlBox[i].firstChild; aNode != null; aNode=aNode.nextSibling) {
//trace (aNode.attributes.title);
xmlDataTemp[gallName][xmlDataTemp[gallName].length] = new Array();
xmlDataTemp[gallName][xmlDataTemp[gallName].length-1]['title'] = aNode.attributes.title;
xmlDataTemp[gallName][xmlDataTemp[gallName].length-1]['main'] = aNode.attributes.main;
xmlDataTemp[gallName][xmlDataTemp[gallName].length-1]['thmb'] = aNode.attributes.thmb;
}
}
}
return (xmlDataTemp);
}
4. потом при создании етих превью, повесить на них код загрузки (прелоадер) для каждого рисунка (буду очень признателен есси кто-то выложит этот код. для одного мувика написать просто. а как повесить на дубликат что-то голова не варит) 5. при нажатии на соответствующий мувик-превью в главный контейнер загрузить соответствующий рисунок (на него так же вещаеться програмный прелоадер) в общем как-то так. только мне кажеться что парсинг xml очень получаеться перегружен в моем случае и логика далеко не идеальна. подскажите плиз правильное направление. буду очень признателен за тутор (рус/англ значения не имеет). заранее спасибо! ![]() |
|
|||||
|
пака писал... встретился тут с очередной проблемой.
имею список превьюшек. ну и что... начинаю дублировать... thumbMC.duplicateMovieClip('thumb-0', this.getNextHighestDepth());
eval('thumb-0')._x = thumbMC._x+thumbMC._width+10;
eval('thumb-0').onPress = function() {
//this.loadMovie(thList[0]['main']);
trace(thList[0]['main']);
};
for (var i:Number = 1; i<arr.length; ++i) {
thumbMC.duplicateMovieClip('thumb-'+i, this.getNextHighestDepth());
eval('thumb-'+i)._x = eval('thumb-'+(i-1))._x+eval('thumb-'+(i-1))._width+10;
eval('thumb-'+i).onPress = function() {
mc.loadMovie(thList[i]['main']);
};
}
mc.loadMovie(thList[i]['main']); а надо mc.loadMovie(адрес к рисунку); то есть надо чтоб оно вместо thList[i]['main'] всунуло адресс. может как-то по другому можно раздублировать рисунки и динамически им присвоить события для кадого соответствующие?! |
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
а адрес к рисунку где хранится?
вместо дублирования используйте attachMovie(), (F1), передавая в initObj все что вам нужно, в т.ч. и url подгружаемой картинки. eval() лучше тоже не использовать, создавайте ссылки: Последний раз редактировалось Kikasso; 21.01.2007 в 23:29. |
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
Писал на коленке, ничего не гарантирую:
//первый клип ставим в 0, 0
var tn:MovieClip;
var id:String = <llinkage в библиотеке>;
var newX:Number = 0;
var i:Number;
var pikUrl:String;
function tnOnPress():Void{
mc.loadMovie(this.pikUrl);
}
for ( i=0; i<arr.length; i++) {
var initObj = { pikUrl:path-to-url, _x:newX, onPress:tnOnPress };
tn = attachMovie( id, "tn"+i, getNextHighestDepth(), initObj );
newX += tn._width + 10;
}
как получить path-to-url по номеру в твоем случае, не знаю, не понимаю где они хранятся. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:12. |
|
|
« Предыдущая тема | Следующая тема » |
|
|