首頁 >web前端 >js教程 >如何檢索文字輸入欄位中的插入符位置?

如何檢索文字輸入欄位中的插入符位置?

Linda Hamilton
Linda Hamilton原創
2024-12-13 19:06:19834瀏覽

How Can I Retrieve the Caret Position in a Text Input Field?

Retrieving Caret Position within a Text Input Field

想知道如何從輸入欄位取得遊標位置嗎?本文將提供幾種解決方案,其中包括一個易於整合的 jQuery 插件。

jQuery 外掛程式

要使用jQuery 外掛程式取得遊標位置,請依照下列步驟操作:

  • 安裝jQuery 外掛程式:
  • 安裝jQuery 外掛程式,例如Caret. js。
  • 在頁面中引用外掛程式腳本。

使用 $("#myinput").caretPosition() 方法取得遊標位置。

其他解決方案

如果您不希望使用jQuery 插件,可以使用以下解決方案:

原生JavaScript

function doGetCaretPosition(field) {
  return field.selectionStart;
}

此方法是基於field.selectionStart屬性:

自述函數

function doGetCaretPosition(field) {
  var iCaretPos = 0;

  // IE support
  if (document.selection) {
    field.focus();
    var oSel = document.selection.createRange();
    oSel.moveStart('character', -field.value.length);
    iCaretPos = oSel.text.length;
  }

  // Firefox support
  else if (field.selectionStart || field.selectionStart == '0') {
    iCaretPos = field.selectionDirection=='backward' ? field.selectionStart : field.selectionEnd;
  }

  return iCaretPos;
}
此解決方案提供了更廣泛的兼容性,包括 IE 和 Firefox:

以上是如何檢索文字輸入欄位中的插入符位置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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