使用window.getSelection从textarea中选择或找到光标所在的文本行

我使用Ajax调用动态填充textarea。 在我的代码中,我想使用window.getSelection获取光标的当前行内容。 我试过以下代码,

var range = window.getSelection().toString;
alert (typeof(range));

但是,它返回作为警报消息的function。 或者任何其他更好的方法,从textarea获取光标的当前行内容,代码需要在所有浏览器中支持。 获得当前行内容后,我会找到行号并更新新内容。

首先,textareas具有与常规内容不同的选择API:使用textarea的selectionStartselectionEnd属性而不是window.getSelection()

其次,如果您考虑到浏览器的自动包装内容,那么获取当前行需要一些创造性的编码。 我在Stack Overflow中看到了一些关于这个的问题。 这是一个例子:

在textarea中找到包含ARABIC文本的“换行符”