![]() |
XML. тег CDATA, загрузка изображений в текстовое поле
Возможно ли сделать подгрузку изображений в динамическое текстовое поле, с помощью XML, через тег CDATA, но в оболочку, в клип mcFoto_mc?
Например XML: Код:
<m> поле. Пример вида: Код:
<m> Можно конечно при загрузке XML сканировать текст на определнный тег, например <FT>, и замещать его тегом <img src='Значение в теге <FT>', но это во первых будет тормозить Флеху, а во вторых очень не удобно...и очень большая куча в третьих... Мож, через setStyle, как нить можно?... Но вряд ли... |
не проще так?
Код:
<m> |
такой вот выверт, может и сгодится:
в img прописываем alt с нужным параметром <img src='mcFoto_mc' alt='Foto1.jpg'> флеш его игнорирует, но в htmlText сохраняет, а мы его читаем из самого mcFoto_mc: var s=this._parent.htmlText; var b=s.indexOf("ALT=\"")+5; var e=s.indexOf("\"",b); var pic=s.substring(b,e); trace(pic) |
Цитата:
|
парсер в 3 строчки блин... но составлять документы для обработки раза в 3 проще становиться и читать тоже. + экономия мегобайтов, сантиметров и деревьев.
|
Цитата:
|
а о чем собственно спор? CDATA все-равно flash'ем не поддерживается. Да даже если и поддреживал, все-равно нужно было бы писать парсер, чтоб эти данные выципить, записать в BitmapData, скажем, а потом нарисовать его на мувиклип.
Так что можно написать рекурентный обход XML-ника, и на каждый тип тега вызывать соответсвующий обработчик. В любом случае нагрузка на проц будет, даже если б эта самая CDATA поддерживалась флешем, и был бы встроенный механизм, "понимающий" как это все в TextField вставлять - в любом случае XML будет парситься. Разница только в том, кто писал парсер - вы или разработчики флеша :) |
2silin, спасибо за ценный совет.
2Usnul, тебе KUZEN уже объяснил, чем полезен и удобен тег CDATA. И это неоспоримо. |
Цитата:
Кузен и я говорили о разных вещах. [sarcasm]"наздоровье, всегда рад помочь, сразу хочется бежать и отвечать на еще десяток вопросов когда слышишь такие приятные слова как 'спасибо'"[/sarcasm] ЗЫ топик превратился во флейм. |
добрый вечер, буду краток. :)
Код:
var xml:XML = new XML("<a><![CDATA[<b>Пример текста и фотка загруженная обычным способом</b><img src='Обычная фотка'><b> А теперь фотка, которая грузится в динамическое текстовое поле с помощью мувика, который имеет Linkage в библиотеке mcFoto_mc</b><img id='test_mc' src='mcFoto_mc&Foto1.jpg'>]]></a>");а с другой стороны, если вы присвоите строковое значение этой ноды свойству htmlText текстового поля, вы получите внутри текстового поля клип, который будет назван в соответствии с атрибутом id тега <img>. дальше, я думаю, вы догадаетесь, что делать. breez38 какую-то ересь говорит. :) Usnul вредничает не по теме. :) |
| Часовой пояс GMT +4, время: 08:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.