Javascript 单击“选择输入文本框”后如何获取插入符号位置?

Javascript 单击“选择输入文本框”后如何获取插入符号位置?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个输入框,里面选择了文本 当我在选择区域内单击时,我希望接收插入符号位置 我看到的唯一有用的属性是selection start属性,但由于选中的输入框,它始终为0 如何接收单击的插入符号位置?在文本框中单击可以获得插入符号位置,但由于所选文本不是DOM节点,因此无法为所选部分分配单击事件。如果你只是想点击插入符号的位置,这将帮助你 function GetCaretPosition(ctrl) { var CaretPos = 0; // IE Support

我有一个输入框,里面选择了文本

当我在选择区域内单击时,我希望接收插入符号位置

我看到的唯一有用的属性是selection start属性,但由于选中的输入框,它始终为0


如何接收单击的插入符号位置?

在文本框中单击可以获得插入符号位置,但由于所选文本不是DOM节点,因此无法为所选部分分配单击事件。如果你只是想点击插入符号的位置,这将帮助你

    function GetCaretPosition(ctrl) {
        var CaretPos = 0; // IE Support
    if (document.selection) {
            ctrl.focus();
            var Sel = document.selection.createRange();
            Sel.moveStart('character', - ctrl.value.length);
            CaretPos = Sel.text.length;
        }
        // Firefox support
        else if (ctrl.selectionStart || ctrl.selectionStart == '0') CaretPos = ctrl.selectionStart;
        return (CaretPos);
    }

$(document).ready(function(e) {
    $('.textBox').click(function(e) {
        alert(GetCaretPosition(this));
    });
});

选中

这不是重复,因为我的问题发生在单击选定文本后,而不是在特定类型的元素上。基本上,你的意思是:我选择一个文本部分,然后在该选择中单击?(出于好奇,你需要它做什么?)是的,这就是我的意思,我需要它作为我正在开发的产品的一个要求,是否有一种方法可以在JQuery中实现?你是否尝试过调整其他答案中发布的代码?继续尝试,然后在这里发布一些到目前为止你所拥有的代码-我们会看一看。在jsBin上进行演示会很好