Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как в textField сделать IMG ссылкой? (http://www.flasher.ru/forum/showthread.php?t=111152)

akerka 17.04.2008 03:29

Как в textField сделать IMG ссылкой?
 
Вложений: 1
В тексте TextField.htmlText встречается тег img. При щелчке на нем должна вызываться определенная функция.

Следующий вариант ссылки не работает, если embedFonts==true:

Код:

...<a href="event:someArgument"><img src="someimage.jpg" id="someimage"></a>...
Событие просто не происходит. Причем, если внутри ссылки также находится текст - он реагирует на щелчок, а изображение - все равно нет.


Пробовал также получить доступ к изображению через getImageReference и подвесить на него event хотя бы таким образом, но событие по прежнему не происходит.

Как выполнить эту задачу- сделать img, находящийся в TextField, ссылкой, при сохранении использования встроенных во флэшку шрифтов?

DarkLight 17.04.2008 10:48

тег img закрывать не забывайте. Приведенный вариант при закрытом img работает.

akerka 17.04.2008 12:11

Боюсь, что закрытие непарных тегов тоже не помогает. Я прикрепил к теме исходник примера для иллюстрации проблемы

ulik 17.04.2008 13:19

Исходный код я не качал, но вот пример, в котором все работает:
Код:

var tf:TextField=new TextField();
tf.name="myText";
tf.width=200;
tf.multiline=true;
tf.autoSize=TextFieldAutoSize.LEFT;
tf.condenseWhite=true;
tf.wordWrap=true;
tf.htmlText="<a href='event:hello_world!'><img src='http://www.flasher.ru/forum/images/russian/flasher_logo.gif' id='logo' /></a>";
addEventListener(TextEvent.LINK, linkHandler);
addChild(tf);

function linkHandler(event:TextEvent) {
        trace("Получаем по клику: "+event.text);
}


alekslitvinenk 17.04.2008 13:36

уберите tValue.embedFonts = true;
и будет вам счастье :)

Alex Lexcuk 17.04.2008 13:41

ну, чет-то не понятно, как может быть
tValue.embedFonts = true;
когда, вроде бы внедренного шрифта, как бы и нету...
Он же должен быть в библиотеке, что бы стать внедренным.
Если все таки имеется желание его внедрить.
Может вы поймете, я не понял.

All examples can be found on
http://easeyourdigitallife.blogspot....3-example.html
and
http://easeyourdigitallife.blogspot....ple-using.html

derhab 17.04.2008 13:49

Цитата:

Сообщение от Alex Lexcuk
ну, чет-то не понятно, как может быть
tValue.embedFonts = true;
когда, вроде бы внедренного шрифта, как бы и нету...
Он же должен быть в библиотеке, что бы стать внедренным.

Есть внедренный шрифт, на сцене текстовые поля с внедренными глифами.

Цитата:

Сообщение от alekslitvinenk
уберите tValue.embedFonts = true;

И это не выход если нужен определенный шрифт..

alekslitvinenk 17.04.2008 14:12

Возможно, но в примере автора изображение не работало как ссылка именно потому что: embedFonts = true;

derhab 17.04.2008 14:22

да, но по идее оно должно работать...embedFonts = true не должен этому мешать

alekslitvinenk 17.04.2008 14:52

Почему не должен мешать ?
Вы можете в обычную html страницу внедрить шрифт ?
По видимому htmlText и embedFonts несовместими, так что лучше уж доконца следовать правилам html и использовать класс StyleSheet...


Часовой пояс GMT +4, время: 07:21.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.