PDA

Просмотр полной версии : Не работают ссылки из текста


JhAZZ
15.06.2006, 18:08
Кто сталкивался с такой проблемой?

Вот кусок программы, который читает блок HTML текста и печатает его разделенным по подстраницам
http://www.belinka.ru/flash/theme1/JSBReader.html
Если прокрутить вниз, то там есть продукт Belinka Base, у которого ссылка работает. И к тому же текст выделяется, если его начать выделять мышкой.

В случае, когда это все живет внутри навигатора (он подгружает JSBReader.swf в себя) эти выделения и линк не работают. Мышь тупо проходит мимо. Ссылку ни активировать ни скопировать нельзя.
http://www.belinka.ru/flash/theme1/view.phtml
(чтобы это увидеть надо выбрать раздел "Продукция", затем "Средства защиты древесины", затем "Belinka Top Lasur")

Вроде бы могут проблемы с контейнерами, кнопками сверху и прочим. Но нет. На локальной машине все работает идеально. Когда это запускается на хостинге - не работает. Броузер тот же.

Первая мысль приходит, что криво прописаны domainPolicy. Ан нет. У меня бы тогда вообще ничего не работало бы, так как этот JSBReader обращается к навигатору и все как видите работает.

Вот код, которым я создаю поле. Вроде все правильно сделал

mcContainer.createTextField("b_txt"+i,depth,0,0,width,500);
tf=TextField(mcContainer.getInstanceAtDepth(depth));
tf.html=tf.selectable=tf.wordWrap=tf.multiline=tf.condenseWhite=true;
tf.styleSheet=css;
tf.htmlText="<body>"+block.content+"</body>";

Usnul
16.06.2006, 15:33
покажи как у тебя ссылки написаны.

JhAZZ
18.06.2006, 10:37
<A href='asfunction:_root._openproduct,3345.html'>Belinka Base</A>


Вот отсюда все качается
http://www.belinka.ru/flash/theme1/JSBReader.php?call[]=stdctrls.IRichtext.LoadXML:BindTo=store.product.desc/3341

Там еще есть атрибут relhref внутри <a>, но он нужен просто для моего рекдактора, флэшем он не обрабатывается.
Файл JDispatcher.swf подгружет в каждый фрейм JSBReader.swf , передавая параметры через функции.

В начале обоих файлов стоит
System.security.allowDomain("localhost", "*.belinka.ru", "belinka.msk.ru);

crossdomain.txt содержит
<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>

JhAZZ
18.06.2006, 12:23
Лупень я дурной , вапще

флэшка на belinka.ru качалась с домена belinka.msk.ru
Хоть у меня и были allow прописаны и на домен belinka.msk.ru, но не помогало. Теперь работает.

Получается, что отображение ссылок Flash и соответственно их блокировка не особо проверяет allowDomain , а тупо смотрит same_domain/not_same А вызов функций из подфлэшек - проверяет эти правила полностью.

etc
18.06.2006, 12:38
allowDomain в данной ситуации и не должен быть помочь. Должен был помочь crossdomain на belinka.msk.ru

JhAZZ
18.06.2006, 14:50
Там он был, в корневике!*8)

Вобщем хостинг belinka.msk.ru я сейчас снес, чтобы подобных проблем не возникало в процессе отладки.