2010-03-03 50 views
2

我在textarea中有一个插入符号(没有选择)。我需要从中选择。
例如: “这是一个忒| XT”JS在IE中扩展空范围

var caret = document.selection.createRange(); // got empty range between "e" and "x" 
caret.moveEnd('character'); // Move endpoint one character right, now it must be "x" 
alert (caret.text); // empty !!! 

有什么不对?

回答

3

你不叫“moveEnd”的评选对象 - 你怎么称呼它的的TextRange(“插入符号”):

var caret = document.selection.createRange(); // got empty range between "e" and "x" 
caret.moveEnd('character'); // Move endpoint one character right, now it must be "x" 
caret.select(); // make the selection equal the range 
alert (caret.htmlText); 

编辑我还编辑这让这个“警戒”的实际工作:-)

下面是一个例子页:http://gutfullofbeer.net/range.html

我觉得这个东西可能只对了在IE浏览器。 (证实至少Chrome并没有对该代码做任何事情。)

+0

对不起,这是我的错,我只是在这里混淆了变量名。改变了它。 这是行不通的。 – Qiao

+0

立即尝试 - 我已经修复了一遍,以便“alert”中引用的内容实际可用。 – Pointy

+0

不行,它仍然无法正常工作。首先选择应该是空的,只要caret | 。 – Qiao