![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2009
Сообщений: 78
|
Решил сделать для своего видеоплеера xml-плейлист. И все вроде бы хорошо, все работает как надо. Кроме включения нужного мне ролика по клику по нему в плейлисте. Код собственно такой:
// настройки #include "skipCache.as" var playlist:XML = new XML(); playlist.ignoreWhite = true; playlist.onLoad = buildItems; playlist.load("playlist.xml"+getSkipCacheString()); stop(); // функция построения плейлиста function buildItems(success:Boolean):Void { if(success) { var allXML:XMLNode = playlist.firstChild; itemsTotal = allXML.childNodes.length; allItems = listvideo.createEmptyMovieClip("allItems", 2); itemsMax = 10; var i:Number; for(i=0;i<itemsTotal && i<itemsMax;i++) { // подключаю мувик с элементом списка var item:MovieClip = allItems.attachMovie("videoItem", "item"+i, i+100); // определяю переменные из хмл ldate = allXML.childNodes[i].childNodes[0].childNodes[0].nodeValue; lname = allXML.childNodes[i].childNodes[1].childNodes[0].nodeValue; lfile = allXML.childNodes[i].childNodes[2].childNodes[0].nodeValue; lduration = allXML.childNodes[i].childNodes[3].childNodes[0].nodeValue; limage = allXML.childNodes[i].childNodes[4].childNodes[0].nodeValue; item.name.text = lname; item.date.text = ldate; item.time.text = lduration; item.file.text = lfile; // пытаюсь запустить кликом по элементу нужный мне ролик item.onRelease = function() { ns.play(lfile); } // раставляю элементы item._x = 1; item._y = i*51+1; item.num = itemNum++; } } else { trace('XML NOT LOADED'); } } Подскажите, где ошибся |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
|
Очень распространенная ошибка. Переменная lfile определена в onLoad и на каждом шаге цикла меняет свое значение, поэтому надеяться, что при срабатывание onRelease клип будет помнить ее значение в прошлом, очень наивно
Поэтому надо создать переменную, которая будет принадлежать мувиликлипу |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 78
|
iNils в очередной раз огромное спасибо, что выручил
|
![]() |
![]() |
Часовой пояс GMT +4, время: 08:39. |
|
|
« Предыдущая тема | Следующая тема » |
|
|