Javascript 无法捕获在jQuery中右键单击并触发contextmenu的文本索引

Javascript 无法捕获在jQuery中右键单击并触发contextmenu的文本索引,javascript,jquery,contextmenu,Javascript,Jquery,Contextmenu,上下文: 在下面的代码片段中,我试图获取输入元素中文本的索引,在该元素中右键单击文本。但是,我只能获取在其上进行右键单击的元素的id。 相反,我想要文本“Hello World”,如果我右键单击字母“W”,它应该返回“W”的索引,即6 下面是代码片段。任何帮助都会很好 代码: <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>index demo&

上下文: 在下面的代码片段中,我试图获取输入元素中文本的索引,在该元素中右键单击文本。但是,我只能获取在其上进行右键单击的元素的id。 相反,我想要文本“Hello World”,如果我右键单击字母“W”,它应该返回“W”的索引,即6

下面是代码片段。任何帮助都会很好

代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>index demo</title>
<style>
div {
font-weight: bold;
color: #090;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>

<body>
<input type="text" id="bar" value="hello world">
<div></div>
<script>
var listItem = $( "#bar" );
console.info('listItem='+listItem.val());
listItem.on("contextmenu",function(event){
    console.info('event=',event);
  console.info($(this).attr('id'));
});
//$( "div" ).html( "Index: " + $( "li" ).index( listItem ) );
</script>
</body>

索引演示
div{
字体大小:粗体;
颜色:#090;
}
var listItem=$(“#bar”);
console.info('listItem='+listItem.val());
listItem.on(“上下文菜单”,函数(事件){
console.info('event=',event);
console.info($(this.attr('id'));
});
//$(“div”).html(“索引:”+$(“li”).Index(列表项));
.attr('value')
。从字符串中获取特定字符更为困难。如果需要,不要使用str,而是使用跨距中的单个字符,这样您就可以真正区分单击的字母。@Shilly.val()应该可以工作,但他仍然需要确定单击了哪个字符。你例子中的“W”。