Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript:通过鼠标单击获取输入文本位置(字符)_Javascript_Text_Input_Cursor_Caret - Fatal编程技术网

JavaScript:通过鼠标单击获取输入文本位置(字符)

JavaScript:通过鼠标单击获取输入文本位置(字符),javascript,text,input,cursor,caret,Javascript,Text,Input,Cursor,Caret,我有一个HTML或随机存在的文本,比如 [12345678]或 [12345 67890] 我在这个文本中有一个任意定位的mousedown-click事件。我需要将2D鼠标向下点击页面坐标转换为基于1D字符的文本坐标,以便通过JS正确定位插入符号。显然,浏览器有一些内部转换功能;叫这个名字会很好。输入有一个标准的可变宽度字体,可以在任何级别放大。浏览器仅限于FireFox。我们有JQuery和JCursor 背景:输入字段是在深度嵌套的框中动态生成的,每个框都有严重的重载。遗留代码与最新FF实

我有一个HTML
随机存在的文本,比如 [12345678]或 [12345
67890]
我在这个文本中有一个任意定位的mousedown-click事件。我需要将2D鼠标向下点击页面坐标转换为基于1D字符的文本坐标,以便通过JS正确定位插入符号。显然,浏览器有一些内部转换功能;叫这个名字会很好。输入有一个标准的可变宽度字体,可以在任何级别放大。浏览器仅限于FireFox。我们有JQuery和JCursor


背景:输入字段是在深度嵌套的框中动态生成的,每个框都有严重的重载。遗留代码与最新FF实现的结合不知何故窃取了鼠标向下传播/焦点,从它从输入元素冒泡出来到它点击默认浏览器设置插入符号动作之间的时间,而这并没有发生。我需要自己设置插入符号

本例的一个解决方法是对事件使用level2 stopPropagation()调用,同时为level0 onmousedown处理程序返回true(保持传播)。这避免了在冒泡[进入父结构的遗留代码]时进一步的第2级调用,同时仍然确保本机默认操作[放置插入符号]确实发生在冒泡阶段之后。然而,它仍然没有回答原来的问题,而这个问题还有其他的应用