首頁 >web前端 >js教程 >如何取得文字區域中的插入符位置和周圍文字?

如何取得文字區域中的插入符位置和周圍文字?

Patricia Arquette
Patricia Arquette原創
2024-12-22 13:54:10574瀏覽

How Can I Get the Caret Position and Surrounding Text in a Textarea?

取得文字區域中的插入符位置

確定

對於支援 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn