获取文本区域中的插入符位置
确定
对于支持 SelectionStart 属性的 Firefox 和 Safari 等现代浏览器,获取插入符号的列位置非常简单:
function getCaretColumn(textarea) { return textarea.selectionStart; }
但是,在 IE 和旧版浏览器中,此属性不可用,需要更复杂的解决方案:
function getCaretColumnIE(textarea) { var caret = document.selection.createRange(); var length = 0; var dul = caret.duplicate(); dul.moveToElementText(textarea); sel.text = '<pre class="brush:php;toolbar:false">function getSurroundingStrings(textarea) { var start = textarea.selectionStart; var end = textarea.selectionEnd; return [ textarea.value.slice(0, start), textarea.value.slice(start, end), textarea.value.slice(end) ]; }1'; length = dul.text.indexOf('1'); sel.moveStart('character', -1); sel.text = ""; return length; }
获取光标周围的字符串
要检索光标或选择周围的字符串,我们可以使用获取开始和结束插入符的组合位置,以及切片文本区域的值:
如果单词或文本突出显示,此函数将返回选择之前、之内和之后的字符串。
以上是如何获取文本区域中的插入符位置和周围文本?的详细内容。更多信息请关注PHP中文网其他相关文章!