<div class = "textarea textareaplace" id = "userinfo" contenteditable = "true" onkeydown = "keyD (this);" onkeyup = "keyAction (this);" oncopy = "keyCop ();" onpaste = "keyPas () "> </ div>
JS Code
var = TextBox document.getElementById ( 'UserInfo'),
g_selectNum = 0,
SEL = window.getSelection (),
Range = document.createRange ();
function keyD (obj) {// press event
var A = textbox.innerHTML;
var = TEXTA textbox.innerText.substr (0,20);
range.selectNodeContents (TextBox); // div node will add the contents of the range
range.collapse (to false);
sel.removeAllRanges ( );
sel.addRange (range); // J Object is added to the text field range
}
function keyPas () {
var TEXTA = textbox.innerText.substr (0,20);
setTimeout(function(){
var a=textbox.innerHTML;
textbox.innerText=a.replace(/<span.*">|<\/span>/g, ""); //将复制内容中span标签替换
range.selectNodeContents(textbox);
range.collapse(false);
sel.removeAllRanges();
sel.addRange(range);
},300)
};
function keyCop(obj){
var textA=textbox.innerText.substr(0,20);
a_num=textA.length;
var selectCon=sel.toString();
g_selectNum=selectCon.length;
}
function keyAction(obj) {
var textA=textbox.innerText.substr(0,20);
a_num=textA.length;
a_arr[1]=a_num;
textbox.innerText=textA;
range.selectNodeContents(textbox);
range.collapse(false);
sel.removeAllRanges();
sel.addRange(range);
}
div simulate text entry boxes do word limit by words substr limit when the cursor reaches back to the beginning but will delete objects with range limit
Guess you like
Origin www.cnblogs.com/BluceLee/p/12100034.html
Recommended
Ranking