zoukankan      html  css  js  c++  java
  • Function:光标位置插入文本并且光标移动到最后

    //光标位置插入文本
    function insertText(obj, str) {
      if(document.selection) {
        var sel = document.selection.createRange();
        sel.text = str;
      } else if(typeof obj.selectionStart === 'number' && typeof obj.selectionEnd === 'number') {
        var startPos = obj.selectionStart,
        endPos = obj.selectionEnd,
        cursorPos = startPos,
        tmpStr = obj.value;
        obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length);
        cursorPos += str.length;
        obj.selectionStart = obj.selectionEnd = cursorPos;
      } else {
      obj.value += str;
      }
      moveEnd(obj);
    }
    //光标移动到最后
    function moveEnd(obj) {
      obj.focus();
      var len = obj.value.length;
      if(document.selection) {
        var sel = obj.createTextRange();
        sel.moveStart('character', len);
        sel.collapse();
        sel.select();
      } else if(typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') {
        obj.selectionStart = obj.selectionEnd = len;
      }
    }
    
    用法:insertText(document.getElementByid('textarea'),'12345')
    

      

  • 相关阅读:
    vue03
    vue02
    vue01
    VMware下Linux配置局域网和外网访问
    以太坊solidity编程常见错误(不定期更新)
    elasticsearch的探索之路
    一个rails项目连多个mongo数据库
    分析rails日志,计算响应率
    PostgreSQL新手上路PG::ConnectionBad (FATAL: Peer authentication failed
    cache目录没有权限
  • 原文地址:https://www.cnblogs.com/xiaomingSun/p/6760498.html
Copyright © 2011-2022 走看看