Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: "Сфотографировать" <textarea>
 
 автор: Николай2357   (05.07.2008 в 21:11)   письмо автору
 
 

Здравствуйте.
Сломал голову об такую задачку. Мне нужно посчитать количество символов, введенных в <textarea> с клавиатуры (есть еще введенные скриптом). Казалось бы просто: записать в переменную объект textRange событием onkedovn и сравнить с объектом, сформированным событием onkeyup. Почему так сложно - нужно выловить конкретные символы, а коды клавиш при переключении с кирилицы на латиницу меняются только в Опере. Ну может еще где, я не проверял Мне нужен IE, а там как всегда все не как у людей.
Код примерно такой:

var Vsego = 0;
var reg1 = new RegExp("\\[","g");
var reg2 = new RegExp("\\]","g");
function Setdown(){
var kc=event.keyCode;
if(kc==219||kc==221){
document.form.message.focus();
var fot = form.message.createTextRange();
var ft=fot.text;
var scdkv = new Array();
var scdkvv = new Array();
var Svv1=0;
var Svv2=0;
var scdkvv=ft.match(reg1,"");
if(scdkvv!=null){
    Svv1=scdkvv.length;
}
var scdkv=ft.match(reg2,"");
if(scdkv!=null){
    Svv2=scdkv.length;
}
Vsego=Svv1+Svv2; 
}
}

Второй блок аналогично. Потом сравниваю и получаю разницу. Все бы ничего, но есть один нюанс. Если не отпускать клавишу, происходит куча onceypress, и почему то это "странным" образом отражается на результате. По логике вещей onkedovn должно наступать один раз, при нажатии, ан нет: в переменную записывается конечный результат. Как можно прервать это событие, не прерывая onceypress?
Спасибо

   
 
 автор: Николай2357   (05.07.2008 в 22:03)   письмо автору
 
   для: Николай2357   (05.07.2008 в 21:11)
 

Заметил одну интересную вещь. Целый день мучаешься, не можешь решить проблемку. Стоит написать на форум, как тут же приходит решение.
Спасибо, придумал.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования