jQuery 中是否有任何事件可以监听输入选择?
例如,假设我foo_bar
在文本输入中编写了内容。然后我用鼠标选择单词 foo。所以事件应该返回0, 2
(的字符串位置foo
)。
有没有办法做到这一点?我不知道从哪里开始,我正在翻阅 jQuery API 页面,但似乎找不到任何有用的东西。
我想mousedown
在输入上监听事件,然后以某种方式检索发生点击的字符串的位置(不确定是否可能),然后获取mouseup
发生点击的位置。
欢迎任何信息、来源或示例。
jQuery 中是否有任何事件可以监听输入选择?
例如,假设我foo_bar
在文本输入中编写了内容。然后我用鼠标选择单词 foo。所以事件应该返回0, 2
(的字符串位置foo
)。
有没有办法做到这一点?我不知道从哪里开始,我正在翻阅 jQuery API 页面,但似乎找不到任何有用的东西。
我想mousedown
在输入上监听事件,然后以某种方式检索发生点击的字符串的位置(不确定是否可能),然后获取mouseup
发生点击的位置。
欢迎任何信息、来源或示例。
编辑:
$('#foo').select(function(e) {
var start = e.target.selectionStart;
var end = e.target.selectionEnd;
console.log('Changed: ' + start + ' to ' + end);
});
演示:http: //jsfiddle.net/ZyDjV/1/
您可以为此使用select事件:
$('#foo').select(function(e) {
console.log('Selection Changed');
});
演示:http: //jsfiddle.net/ZyDjV/
看到这个:http: //jsfiddle.net/rT5vR/
var getSelected = function(){
var t = '';
if(window.getSelection) {
t = window.getSelection();
} else if(document.getSelection) {
t = document.getSelection();
} else if(document.selection) {
t = document.selection.createRange().text;
}
return t;
}
$("#myElement").select(function(eventObject) {
alert(getSelected().toString());
});
</p>