カーソルが到達は、最初にバックアップが、レンジの上限でオブジェクトを削除する時期のdivシミュレートテキスト入力ボックスには、言葉のsubstr制限によって単語の制限を行います

<DIV CLASS = "TEXTAREAのtextareaplace" onkeyupの= "keyAction(この);" oncopy = "keyCop();";のcontentEditable = "真"にonKeyDown = "keyD(この)"、 "ユーザー情報" ID = onpaste =「keyPas() 「> </ div>

JSコード
VAR =テキストボックスのdocument.getElementById( 'のUserInfo')、
g_selectNum = 0、
SEL = window.getSelection()、
範囲= document.createRange()
関数keyD(OBJ){//プレスイベント
VAR A = textbox.innerHTML;

VAR = TEXTA textbox.innerText.substr(0.20);
range.selectNodeContents(テキストボックス); // divのノード範囲の内容を追加する
(falseに)range.collapseと、
sel.removeAllRanges( );
sel.addRange(範囲); // Jオブジェクトは、テキストフィールドの範囲に追加される
}
関数keyPas(){
VARのTEXTA = textbox.innerText.substr(0,20)。
setTimeout(関数(){
VAR A = textbox.innerHTML。
textbox.innerText = a.replace(/ <スパン*。 "> | <\ / span>を/グラム、 ""); //将复制内容中スパン标签替换
range.selectNodeContents(テキストボックス);
range.collapse(偽) ;
sel.removeAllRanges();
sel.addRange(範囲);
}、300)
;}
関数keyCop(OBJ){
VAR textA = textbox.innerText.substr(0.20);
a_num = textA.length;
VAR selectCon = SEL .toString();
g_selectNum = selectCon.length;
}
関数keyAction(OBJ){
VAR textA = textbox.innerText.substr(0.20);
a_num = textA.length;
a_arr [1] = a_num;
textbox.innerText = textA ;
range.selectNodeContents(テキストボックス);
range.collapse(偽);
sel.removeAllRanges();
sel.addRange(範囲)。
}

おすすめ

転載: www.cnblogs.com/BluceLee/p/12100034.html