台州做网站多少钱,福州做网站设计,织梦网络公司网站源码,徐州营销网站建设报价contenteditabletrue的标签限制字数的时候修改光标位置
有时候input和textarea并不能完全满足ui需求#xff0c;这个时候我们就用contenteditabletrue来将别的标签修改为可编辑状态#xff0c;但当我们通过js修改了内容之后光标的位置就是一个问题true的标签限制字数的时候修改光标位置
有时候input和textarea并不能完全满足ui需求这个时候我们就用contenteditabletrue来将别的标签修改为可编辑状态但当我们通过js修改了内容之后光标的位置就是一个问题那么下面这个函数就可以轻松搞定
function limitTextNum(element, num) {const textLen element.innerText.lengthif(textLen num) {return}// 获取鼠标位置let curPosition 0const selection window.getSelection();if(selection.rangeCount 0) {let curRange selection.getRangeAt(0);curPosition curRange.endOffset;}if(curPosition num) {curPosition num}// 删除多余的文字element.innerText element.innerText.slice(0, num)// 还原光标位置const range document.createRange();range.setStart(element.firstChild, curPosition);range.collapse(true);selection.removeAllRanges();selection.addRange(range);element.focus();}