Javascript onchange работает в текстовой области (браузер Symbian) - PullRequest
0 голосов
/ 04 декабря 2008

Это может относиться к другим мобильным операционным средам, кроме Symbian ... Однако проблема в том, что при изменении поля текстовой области я хотел бы обновить счетчик при вводе. Это легко сделать в большинстве браузеров с помощью тега textarea:

onkeyup="document.getElementById('size').innerHTML=this.value.length;

Однако в Symbian событие onkeyup не запускается нормально (кажется, что весь ввод буферизован или что-то в этом роде). Теперь я могу заменить это на:

onblur="document.getElementById('size').innerHTML=this.value.length;

... Это прекрасно работает, но, конечно, обновляет DIV только тогда, когда фокус потерян (что лучше, чем ничего, но не так приятно, как обновлять его при вводе).

Кто-нибудь сталкивался с подобными проблемами именно на Symbian? В любом другом мобильном браузере? Есть идеи / решения?

Я ненавижу Symbian с тех пор, как начал его использовать - в их API столько странностей, как это. Я буду голосовать за всех, кто жалуется на Symbian. ; -)

1 Ответ

2 голосов
/ 04 декабря 2008

В версии WebKit для Symbian события клавиатуры по-королевски запутаны. Единственный надежный способ справиться с ними - установить обработчик в документе [!]. Теперь я НЕ пробовал это в ситуации, когда textarea фокусируется, но он определенно работает с более простыми элементами управления. По сути, вы используете onfocus и onblur, чтобы связать / разорвать связь специфичных для элемента управления обработчиков событий с документом. Конечно, если вы хотите создать многократно используемый виджет, вас ждет море боли: (

OTOH, если вы недовольны маленькой странностью клавиатуры Symbian, обратите внимание на события мыши в Android-мини-Chrome ... они идут под заголовком FUBAR!

... Max ...

PS. Если вам нужна дополнительная помощь: max-at-motovilov-dot-com. Вы должны быть в состоянии Google для решения этой проблемы на forum.nokia.com, но информации там не много ... это все методом проб и ошибок.

...