Виртуальная клавиатура
Виртуальная клавиатура это необходимая в некоторых случаях вещь, к примеру моменты с отсутствием клавиатуры(редко конечно) или безопасный ввод(защита от кейлогеров).
Она написана на JavaScript, легко конфигурируема, имеет множество языков — в том числе и русский, простейшее встраивание в любую форму. Единственный минус — она занимает 48 килобайт 0_о, но это легко исправляется вырезанием не нужных языков, сжатием.
Живой пример
Не буду тянуть резину, лучше сразу показать это выглядит.
Простенько, не правда ли?
Установка виртуальной клавиатуры
Скачиваем все необходимые файлы(ссылка находиться ниже), вставляем код подключения оформления и самой библиотеки между тегами <head></head>:
<script type="text/javascript" src="keyboard.js"></script>
<link rel="stylesheet" type="text/css" href="keyboard.css">
Теперь прикручиваем клавиатуру к Вашей форме, при помощи добавления класса keyboardInput к нужной форме:
<input type="text" value="" class="keyboardInput">
Для Вас я сменил иконочку и выставил по умолчанию русский язык, так что качайте мою версию ;-)

I’ve read a few excellent stuff here. Certainly price bookmarking for revisiting. I wonder how much attempt you place to make this sort of wonderful informative website.
Straightforward and written well, thank you for the info
Have you ever thought about including a little bit more than just your articles? I mean, what you say is valuable and all. But imagine if you added some great pictures or video clips to give your posts more, «pop»! Your content is excellent but with images and videos, this site could certainly be one of the very best in its niche. Good blog!
Magnificent website. Plenty of useful information here. I am sending it to some pals ans additionally sharing in delicious. And of course, thank you in your sweat!
Very nice design and great content, absolutely nothing else we want :D.
izmir bayan escortlar kulubü.
Hey there, You have done a great job. I will certainly digg it and personally recommend to my friends. I am sure they’ll be benefited from this site.
Very interesting topic , appreciate it for putting up. «He who seizes the right moment is the right man.» by Johann Wolfgang von Goethe.
Thank you for another magnificent post. The place else may anyone get that kind of information in such a perfect way of writing? I have a presentation subsequent week, and I am at the look for such info.
I would like to thnkx for the efforts you’ve put in writing this website. I am hoping the same high-grade site post from you in the upcoming also. Actually your creative writing abilities has inspired me to get my own blog now. Really the blogging is spreading its wings quickly. Your write up is a great example of it.
I like this blog very much, Its a rattling nice situation to read and incur information. «Repetition does not transform a lie into a truth.» by Franklin D. Roosevelt.
Hi Nice blog. Do you need to invitee publish upabout my very own at some point? If so please tell me via e mail or just answer this particular remark simply due to the fact I subscribed to notices and definately will know if you do.
Superb post however , I was wondering if you could write a litte more on this subject? I’d be very grateful if you could elaborate a little bit further. Thank you!
Hey! I just would like to give an enormous thumbs up for the great info you will have right here on this post. I will probably be coming back to your blog for extra soon.
Rattling informative and wonderful complex body part of written content , now that’s user pleasant (:.
It is ill sitting at Rome and striving with the Pope.
thanks you page good thanks
Hi there! This is my first comment here so I just wanted to give a quick shout out and say I really enjoy reading through your blog posts. Can you recommend any other blogs/websites/forums that deal with the same topics? Thanks a lot!
Great blog here! Also your site loads up fast! What host are you using? Can I get your affiliate link to your host? I wish my site loaded up as quickly as yours lol
Hey there! Would you mind if I share your blog with my twitter group? There’s a lot of people that I think would really enjoy your content. Please let me know. Thank you
Greetings from Idaho! I’m bored to death at work so I decided to browse your website on my iphone during lunch break. I really like the knowledge you provide here and can’t wait to take a look when I get home. I’m surprised at how quick your blog loaded on my mobile .. I’m not even using WIFI, just 3G .. Anyhow, good site!
I’m extremely impressed with your writing skills and also with the layout on your weblog. Is this a paid theme or did you customize it yourself? Anyway keep up the nice quality writing, it is rare to see a nice blog like this one today..
Simply want to say your article is as amazing. The clearness on your submit is simply great and that i could think you are knowledgeable on this subject. Fine along with your permission allow me to grab your feed to stay up to date with impending post. Thank you one million and please carry on the gratifying work.
ÿþT
The new Zune browser is surprisingly good, but not as good as the iPod’s. It works well, but isn’t as fast as Safari, and has a clunkier interface. If you occasionally plan on using the web browser that’s not an issue, but if you’re planning to browse the web alot from your PMP then the iPod’s larger screen and better browser may be important.
Very interesting points you have remarked, regards for posting .
My partner and I absolutely love your blog and find most of your post’s to be what precisely I’m looking for. can you offer guest writers to write content for yourself? I wouldn’t mind writing a post or elaborating on some of the subjects you write regarding here. Again, awesome web log!
Real superb information can be found on website .
Just wanna remark on few general things, The website style is perfect, the content is real great : D.
Great write-up, I’m normal visitor of one’s web site, maintain up the nice operate, and It’s going to be a regular visitor for a lengthy time. «Good nonsense is good sense in disguise.» by Josh Billings.