zoukankan      html  css  js  c++  java
  • selectionStart和selectionEnd属性

    在网上看了很多用js在光标处插入文字的代码,很多都没有用,互抄而已,浪费时间。最近用到一个新方法,可以到达这个需求。IE支持document.selection,Firefox,Chrome,Safari以及Opera都有selectionStart和selectionEnd属性。

    代码如下:

    01 function insertText(obj,str) {
    02     if (document.selection) {
    03         var sel = document.selection.createRange();
    04         sel.text = str;
    05     } else if (typeof obj.selectionStart === 'number' && typeof obj.selectionEnd === 'number') {
    06         var startPos = obj.selectionStart,
    07             endPos = obj.selectionEnd,
    08             cursorPos = startPos,
    09             tmpStr = obj.value;
    10         obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length);
    11         cursorPos += str.length;
    12         obj.selectionStart = obj.selectionEnd = cursorPos;
    13     } else {
    14         obj.value += str;
    15     }
    16 }
    17 function moveEnd(obj){
    18     obj.focus();
    19     var len = obj.value.length;
    20     if (document.selection) {
    21         var sel = obj.createTextRange();
    22         sel.moveStart('character',len);
    23         sel.collapse();
    24         sel.select();
    25     } else if (typeof obj.selectionStart == 'number' && typeof obj.selectionEnd == 'number') {
    26         obj.selectionStart = obj.selectionEnd = len;
    27     }
    28 }
  • 相关阅读:
    数据挖掘竞赛常用代码段
    东南大学《算法设计基础》课程作业 4
    东南大学《算法设计基础》课程作业 3
    东南大学《算法设计基础》课程作业 2
    东南大学《算法设计基础》课程作业 1
    shiro
    你好2021!
    关系型数据库索引设计与优化
    lua table面向对象扩展
    lua、python对比学习
  • 原文地址:https://www.cnblogs.com/xiaoyang002/p/4055716.html
Copyright © 2011-2022 走看看