2011-11-03 87 views
0

在“现代”Web浏览器中,当用户按下多行输入中的上下箭头键时,光标会上下移动。在第一行时,按下向上箭头使光标回到行的开头。这是FF,Chrome等标准行为。ASP.NET/HTML - 使用光标时的textarea光标位置

在IE7中,它有所不同。当光标在第一行时,按向上箭头什么也不做。光标仍处于相同的位置。

我想在所有浏览器中使用IE7行为。我怎样才能做到这一点?提前致谢。

回答

1

这将意味着相当多的工作和调整,但您可以使用jQuery Caret,一个jQuery插件。

您可以使用它来设置光标位置。

首先,你可以在你的textarea

<textarea id="myTextArea" value="some text" ></textarea> 

与jQuery赶上keydown事件,同时检查它的使用

$("#myTextArea").bind("keydown", function(e) { 
    var code = e.keyCode || e.which; 
    if(code == 38) { // Arrow up 
     .... code here .... 
    } 
}); 

那么你应该使用插入符号编写的代码,向上箭头1 。记住最后一个光标位置,以及2.如果向上箭头键被击中并且结果位置为0,则将光标位置重置为最后记住的位置。然后为底部/下部编写类似的代码。

对不起,我不能编程,但这样的事情应该工作。