javascript获取以及设置光标位置_javascript技巧_脚本之家

一. 获取光标位置:

// 获取光标位置function getCursortPosition  { var cursorPos = 0; if  { // IE Support textDom.focus (); var selectRange = document.selection.createRange(); selectRange.moveStart ('character', -textDom.value.length); cursorPos = selectRange.text.length; }else if (textDom.selectionStart || textDom.selectionStart == '0') { // Firefox support cursorPos = textDom.selectionStart; } return cursorPos;}

二. 设置光标位置:

// 设置光标位置function setCaretPosition{ if(textDom.setSelectionRange) { // IE Support textDom.focus(); textDom.setSelectionRange; }else if (textDom.createTextRange) { // Firefox support var range = textDom.createTextRange(); range.collapse; range.moveEnd; range.moveStart; range.select(); }}

三. 获取选中文字:

// 获取选中文字function getSelectText() { var userSelection, text; if  { // Firefox support userSelection = window.getSelection(); } else if  { // IE Support userSelection = document.selection.createRange(); } if (!(text = userSelection.text)) { text = userSelection; } return text;}

四. 选中特定范围的文本:

/*** 选中特定范围的文本* 参数:* textDom [JavaScript DOM String] 当前对象* startPos [Int] 起始位置* endPos [Int] 终点位置*/function setSelectText(textDom, startPos, endPos) { var startPos = parseInt, endPos = parseInt, textLength = textDom.value.length; if{ if{ startPos = 0; } if{ endPos = textLength; } if(startPos > textLength){ startPos = textLength; } if{ endPos = textLength; } if{ startPos = textLength + startPos; } if{ endPos = textLength + endPos; } if(textDom.createTextRange){ // IE Support var range = textDom.createTextRange(); range.moveStart("character",-textLength); range.moveEnd("character",-textLength); range.moveStart("character", startPos); range.moveEnd; range.select(); }else{ // Firefox support textDom.setSelectionRange; textDom.focus(); } }}

五. 在光标后插入文本:

/*** 在光标后插入文本* 参数:* textDom [JavaScript DOM String] 当前对象* value [String] 要插入的文本*/function insertAfterText { var selectRange; if  { // IE Support textDom.focus(); selectRange = document.selection.createRange(); selectRange.text = value; textDom.focus(); }else if (textDom.selectionStart || textDom.selectionStart == '0') { // Firefox support var startPos = textDom.selectionStart; var endPos = textDom.selectionEnd; var scrollTop = textDom.scrollTop; textDom.value = textDom.value.substring + value + textDom.value.substring(endPos, textDom.value.length); textDom.focus(); textDom.selectionStart = startPos + value.length; textDom.selectionEnd = startPos + value.length; textDom.scrollTop = scrollTop; } else { textDom.value += value; textDom.focus(); }}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图