http://input.abcn.net/
前两天在学校机房碰到民崇,他电脑坏了,作业什么的只能在学校机房做,没有中文输入法很头疼,这段在公司也是,能显示中文,但是没有权限装中文输入法。。。
在网上有一些网站提供在线中文输入法,但是都不太完美,我暂时把 Dict.cn 海词 的在线中文输入法改了改放上,集合了一些其它站上的优点,比如加了MSN Web Message WebQQ ICQ2Go!,不过还是不够完美,不能输入“”《》这四个符号。以后继续修改。。。不过比较麻烦貌似。先这么放上,基本够用了,而且很好用,词的顺序跟我最爱用的智能ABC完全一样,huhu~
工作博客第一篇,内容是javascript...
function setCursorPos(element, pos) { if (element.createTextRange) { // IE var range = element.createTextRange(); range.collapse(true); range.moveStart('character', pos); range.select(); } else if (element.setSelectionRange) { // Firefox element.focus(); element.setSelectionRange(pos+1, pos+1); } } function getSelectionPos(element) { if (typeof(element.selectionStart) == "number") { // Firefox einfach so, egal in Textarea oder Input start = element.selectionStart; end = element.selectionEnd; } else if (document.selection) { // IE Textarea, muss die Anzahl von Leerzeichen bestimmen var range = document.selection.createRange().duplicate(); if (element.type == "textarea") { var range_all = document.body.createTextRange(); range_all.moveToElementText(element); for (start = 0; range_all.compareEndPoints("StartToStart", range) < 0; start++) range_all.moveStart('character', 1); start_leer = 0; // Leerzeichen vor der start-position zu finden for (var i = 0; i <= start+start_leer; i++) { if (element.value.charAt(i) == '\n') start_leer++; } var range_all = document.body.createTextRange(); range_all.moveToElementText(element); for (end = 0; range_all.compareEndPoints('StartToEnd', range) < 0; end++) range_all.moveStart('character', 1); end_leer = 0; // Leerzeichen vor der end-position zu finden for (var i = 0; i <= end+end_leer; i++) { if (element.value.charAt(i) == '\n') end_leer++; } } else { // IE Input var flag = false; if (range.text == '') { // falls nichts selected, move die Endpunkt zum End range.moveEnd('character', element.value.length); flag = true; } // falls in Text Range gibt es noch gar keine Zeichen, das bedeutet, Cursor ist jetzt am End des Input area // dann start position ist die Lange des Strings, else start position ist die Position des ersten Zeichens start = (range.text == '') ? element.value.length : element.value.indexOf(range.text); // falls vorher ist die Text Range leer (flag==true), dann end position gleich wie start position // else ist end position = start position + die Lange des Strings end = flag ? start : start + range.text.length; start_leer = 0; end_leer = 0; } } }
No comments:
Post a Comment