PDA

Просмотр полной версии : Кириллица, input и wmode кто сталкивался?


alrushdi
01.06.2006, 17:54
Если swf опубликовать в html с wmode = transparent, то буквы кириллицы в поле input не принимаются (отображаются парами квадратиков). Если параметр wmode не указывать, то все нормально.
useCodepage не при чем.

А надо чтобы кириллица нормально вводилась именно в прозрачную флешку. Иначе меню сайта (тоже флеш) оказывается под флешкой с этим самым проклятым полем input(
Какие имеются предложения по решению этого вопроса?

MyXus
02.06.2006, 00:10
сделать векторный алфавит и собственный текстфилд )
шутко.

iNils
02.06.2006, 00:29
Автор Nox Noctis

//
// заплатка, устраняющая проблему неправильного написания русских символов
// в инпутных полях, при прозрачном фоне флэшки в хтмл
// (wmode="transparent")
//
TF.onChanged = function()
{
var broken = this.text.split(chr(4));
for (var i = 1; i<broken.length; i++) {
broken[i] = String.fromCharCode(1024+broken[i].charCodeAt(0))+broken[i].substr(1);
}
this.text = broken.join("");
};
// где TF - это ссылка на инпутное текстовое поле



Оригинал http://flash-mx.ru/forum/topic_show.pl?pid=1281;hl=transparent;hlm=and#pid1281

alrushdi
02.06.2006, 10:08
iNils, Спасибо! Отличное решение.

iNils
14.06.2006, 20:06
Я то тут при чем?

ambuddy
21.11.2006, 21:26
Спасибо автору этой заплатки. Я уже перерыл весь этот форум, но проблема "wmode=transparent VS. Кириллица" оставалась. А мне непременно нужно было на прозрачную флэшку текст с рууским вводом.

Еще раз спасибо автору и iNils за предоставленное решение.

P.S. Проверьте, пожалуйста, на работоспособность: http://www.nrybak.com -> Контакты.

strangedk
23.03.2011, 09:02
Столкнулся с подобной проблемой. Но у меня чуть веселее... проект который висит уже на лайве, отказывается вводить русский текст в новых браузерах (Chrome 10/Safari), в FireFox и Opera всё отлично...

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

mooncar
23.03.2011, 09:33
Мысль одна:
wmode="window"
Да, конечно, у всё может быть завязано на transparent, но если хотите, чтобы всё начало скорее работать и к тому же кроссбраузерно, прислушайтесь к моему совету и попробуйте обойтись без transparent.

strangedk
23.03.2011, 13:23
В том то и дело, у нас стоит wmode="opaque", попробуем поставить сейчас "window" авось поможет...

- но вообще конечно очень смущают подобные траблы, а IE9 вообще фокусник, принес столько сюрпризов, что несколько дней переписывали отдельно под него.

mooncar
23.03.2011, 13:41
попробуем поставить сейчас "window" авось поможет...

Должно помочь. Кстати, само приложение тогда работать существенно шустрее будет, плюс в этом еще есть.

strangedk
23.03.2011, 14:47
Сейчас загвоздка в том, что приложение не рекомпилилось со времен CS3, а сейчас уже юзаем CS5, и соответственно для того чтобы исправить трабл, все шрифты в программе нужно embed'ить вручную... %)

mooncar
23.03.2011, 15:02
Быстрее CS3 найти будет у кого-то установленное, ИМХО.

strangedk
23.03.2011, 19:26
Все верно, сработало wmode="window" почему сразу не получилось, я не заметил что было встроено 2 object'a по условию один для IE (с clsid), второй для остальных браузеров (mime-type).

так вот в одном устанавливали wmode="window" и безрезультатно, а второй, зараза оставался window="opaque"

Сейчас поменяли оба, и всё запечатало. Спасибо за проявленный интерес и советы.

Добавлено через 13 минут
з.ы. Насчет CS3/CS5 - всё-же удобнее было подключить шрифты, чтобы потом спокойно работать в CS5.
Но это касается сугубо этой ситуации.

Конечно очень жаль что нет никакой возможной автоматизации, вручную сложностей не обойти, особенно если в коде используется форматирование через htmlText.

t0di
23.03.2011, 20:48
Тебе в твоём случае помогли, а вот можно ли подобную заплатку для AS3 реализовать? Вот мой трабл здесь (http://www.flasher.ru/forum/showthread.php?t=152773)