Обозреватель

Observer

понедельник, 14 января 2008 г.

Прелоадер для ‘img’ //Управление изображениями, подгружаемыми в Textfield

Оригинал. Блог одиноко стоящего игрока вспышки.

TextField - субстанция крайне интересная, взбаломошная и мистическая.Обуздание оной подчас превращается в подвиг Геракла.Несколько статей о TеxtField я обязательно размещу на страницах этого блога.
Многие знают, что в текстовое поле с подключенным html можно грузить картинки и флешки, а также вставлять символы из библиотеки.Но вот вопрос - а можно ли взаимодействовать с этими объектами? Например возможен ли прелоадер?ДА и очень просто. Фактически тег img создает внутри тексатового поля новый MovieClip. Если в html-коде прописан id для IMG, то будет создан клип именно с таким instance name. И обращаться к этому клипу можно через текстовое поле. К примеру если в текстовое поле my_txt внедряется картинка

[img src="http://murejib.wordpress.com/wp-admin/someIMG" id="img" /]

То мы можем обратиться к ней my_txt.img
Но что если у нас есть html-текст с img без id, и таких картинок много, а нам необходимо сделать скроллер для текстового поля. Пока картинки не загружены мы с большой долей вероятности получим неверную высоту поля.Есть простой способ - нам нужно просто завести массив для учета встроенных картинок

var htmlIMG:Array = [];

И пройтись по текстовому полю циклом for…in, помня, что картинки - это объекты типа MovieClip.

for (var mc in my_txt) {
if (typeof(my_txt[mc]) == “movieclip”) {
trace (”found IMG: “+my_txt[mc]);
htmlIMG.push(my_txt[mc])
}
}

Теперь у нас есть массив, в которые занесены ссылки на все клипы.А дальше - прелоадер должен собрать все загруженные байты этих клипов и все тотальные байты этих же клипов. Суммируем, делим, получаем процент. По завершению загрузки - проверяем высоту поля, и приделываем наш бесценный скроллер.

1 комментарий:

Анонимный комментирует...

разработки классных часов разработка сайтов http://web-miheeff.ru разработки классных часов