Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   трабл с вводом текста (http://www.flasher.ru/forum/showthread.php?t=146229)

temofony 01.11.2010 17:44

трабл с вводом текста
 
Здравствуйте многоуважаемые флешеры.
Пришел я на этот раз возможно с очень простой загвоздкой,но в тоже время очень загадочной для меня.

Проблема с полем ввода.В самом Adobe Flash при тестировании я в него могу писать и на русском,и на английском,все норм.Но на хосте по-русски не пишет-вводит что-то невразумительное наподобие:
"?@825B"
В ролике использовал
Код AS1/AS2:

System.useCodepage=true;

Помогите,что за дребедень??

mooncar 01.11.2010 18:42

1. Уберите из проекта и больше никогда не используйте эту строку.
Код AS1/AS2:

System.useCodepage= true ;

Это вашу проблему не решит, а иные проблемы у юзеров возникнуть могут.

2. Что касается непосредственно вашей проблемы, вы скорее всего публикуете флешку на странице с режимом публикации wmode="transparent".
Вам придется от этого отказаться. Ни transparent, ни opaque работать с поддержкой кириллицы на вводе не будут. Используйте wmode="window".

temofony 01.11.2010 20:21

Значит меня будут ждать квадратные флешки?(((((

Добавлено через 17 минут
доказываю свою "хомосапиенность",то бишь нашел решение сам:
Код AS1/AS2:

TF.onChanged = function()
 {
  if (this.text.indexOf(chr(4)) == -1) {
    return;
  }
  var broken:Array = this.text.split(chr(4));
  var caretIndex:Number = Selection.getCaretIndex()-broken.length+1;
  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("");
  Selection.setSelection(caretIndex,caretIndex);
 };

Пользуйтесь на здоровье с прозрачными флешками))

Добавлено через 18 минут
TF-текстовое поле для обработки

mooncar 01.11.2010 21:59

Проверьте-ка это решение на разных браузерах...
Где-то не работало оно.

temofony 02.11.2010 09:13

mooncar,спасибо за то,что навел меня на мысль что эта проблема из-за прозрачности флешки))

mooncar 02.11.2010 10:39

Пожалуйста. Это известный баг Adobe. Они ленятся его пофиксить уже бог знает сколько лет.

v0ice 18.03.2011 14:16

Цитата:

Сообщение от temofony (Сообщение 947033)
Значит меня будут ждать квадратные флешки?(((((

Добавлено через 17 минут
доказываю свою "хомосапиенность",то бишь нашел решение сам:
Код AS1/AS2:

TF.onChanged = function()
 {
  if (this.text.indexOf(chr(4)) == -1) {
    return;
  }
  var broken:Array = this.text.split(chr(4));
  var caretIndex:Number = Selection.getCaretIndex()-broken.length+1;
  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("");
  Selection.setSelection(caretIndex,caretIndex);
 };

Пользуйтесь на здоровье с прозрачными флешками))

Добавлено через 18 минут
TF-текстовое поле для обработки

Спасибо, то что доктор проиписал )) Как раз тоже мучался с этой темой
В ИЕ и Мозилле сработало без проблем ;) остальные не проверял


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

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