在“现代”网络浏览器中,当用户在多行输入中按上下箭头键时,光标就会上下移动。当光标位于第一行时,按向上箭头可使光标回到该行的开头。这是FF、Chrome等浏览器的标准行为。
在IE7中,情况就不同了。当光标位于第一行时,按向上箭头不执行任何操作。光标仍然在相同的位置。
我希望在所有浏览器中都有IE7行为。我如何才能做到这一点?提前谢谢。
发布于 2011-11-05 01:31:37
这将意味着相当多的工作和调整,但您也许能够使用jQuery插件jQuery Caret。
你可以用它来获取和设置你的光标位置。
首先,您可以在您的文本区域中捕获keydown事件
<textarea id="myTextArea" value="some text" ></textarea>
使用jQuery检查时,它是向上箭头
$("#myTextArea").bind("keydown", function(e) {
var code = e.keyCode || e.which;
if(code == 38) { // Arrow up
.... code here ....
}
});
然后你应该使用Caret来写代码,1.记住最后一个光标的位置,2.如果向上箭头键被击中并且结果的位置是0,你把光标位置重置到最后记住的位置。然后为底部/向下部分编写类似的代码。
很抱歉我不能把它写出来,但是像这样的东西应该可以工作。
https://stackoverflow.com/questions/7996407
复制相似问题