Home > Article > Web Front-end > How to implement JavaScript to record the position of the cursor in the editor_javascript skills
The example in this article describes the implementation method of JavaScript recording the position of the cursor in the editor. Share it with everyone for your reference, the details are as follows:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <script type="text/javascript"> function $(ele){return document.getElementById(ele)} //记录编辑器中的位置 var selection_start; var selection_end; function savePos(textBox){ var start=0; var end=0; if(typeof(textBox.selectionStart) == "number"){ // not ie //alert(typeof(textBox.selectionStart) ); start = textBox.selectionStart; end = textBox.selectionEnd; } else if(document.selection){ var range = document.selection.createRange(); if(range.parentElement().id == textBox.id){ var range_all = document.body.createTextRange(); range_all.moveToElementText(textBox); for (start=0; range_all.compareEndPoints("StartToStart", range) < 0; start++) range_all.moveStart('character', 1); for (var i = 0; i <= start; i ++){ if (textBox.value.charAt(i) == '/n') start++; } var range_all = document.body.createTextRange(); range_all.moveToElementText(textBox); for (end = 0; range_all.compareEndPoints('StartToEnd', range) < 0; end ++) range_all.moveStart('character', 1); for (var i = 0; i <= end; i ++){ if (textBox.value.charAt(i) == '/n') end ++; } } } selection_start = start; selection_end = end; } </script> <form action="" id="test"> <textarea id="t" onfocus="savePos(this);$('log').value=selection_start" onkeydown="savePos(this);$('log').value=selection_start" onmousedown="savePos(this);$('log').value=selection_start" onmouseup="savePos(this);$('log').value=selection_start" > </textarea> <input type="text" id="log" /> </form> </body> </html>
For more JavaScript-related content, please view the special topics on this site: "Summary of JavaScript switching special effects and techniques", "Summary of JavaScript search algorithm techniques", "JavaScript animation Summary of special effects and techniques", "Summary of JavaScript errors and debugging techniques", "Summary of JavaScript data structures and algorithm techniques", "Summary of JavaScript traversal algorithms and techniques " and "Summary of JavaScript mathematical operation usage"
I hope this article will be helpful to everyone in JavaScript programming.