光标相对于项目的位置

Cursor position relative to items

我似乎无法在 Selectize 输入框的项目之间找到编辑光标的当前位置。我也希望获得有关该职位的最新信息。它是不存在的功能吗?

我创建了一个函数,它使用 jQuery 来定位选择控件 DOM 中的输入。

function getCursorIndex (elementId) {
  var elementsInContainer = $(elementId).parent().find(".selectize-input").children();

  var idx = 0;
  $(elementsInContainer).each(function() {
    if(this.tagName == "DIV") {
      idx++;
      return true;
    } else {
      return false;
    }
  });

  return idx;
}

请注意,如果它是屏幕上可见的输入区域中的第一个元素,它会将光标的位置设为零。尝试下面的 fiddle 以了解其工作原理。

此外,考虑到我正在读取 DOM 元素而不是使用 API 元素来获取此值,该示例可能会在未来的 selectize 版本中中断。

这是 fiddle:https://jsfiddle.net/3n4oh257/2/