Javascript 为什么IE 8会让光标跳到这个JS的文本区域的末尾?
Javascript 为什么IE 8会让光标跳到这个JS的文本区域的末尾?,javascript,internet-explorer,cursor,textarea,Javascript,Internet Explorer,Cursor,Textarea,在Firefox中,使用上面的脚本(包含在下面的内联),可以通过点击中间的字符串和打字,或者使用键盘后键(和Ctrl +左箭头)来编辑TetraTrea的内容。p> 在IE中,光标总是跳到末端。为什么会这样,我该如何预防 HTML: 我猜IE会清除文本框值,然后插入新文本。因此,插入符号位置丢失 您可以做的是将插入符号位置保存在内存中,并在设置值: 不要每次都使用substring()截断$(“#bob”),而应仅在文本长度大于160时执行此操作: $(document).ready(func
在Firefox中,使用上面的脚本(包含在下面的内联),可以通过点击中间的字符串和打字,或者使用键盘后键(和Ctrl +左箭头)来编辑TetraTrea的内容。p> 在IE中,光标总是跳到末端。为什么会这样,我该如何预防
HTML:
我猜IE会清除文本框值,然后插入新文本。因此,插入符号位置丢失 您可以做的是将插入符号位置保存在内存中,并在设置值: 不要每次都使用
substring()
截断$(“#bob”),而应仅在文本长度大于160时执行此操作:
$(document).ready(function(){
var oldtext = $("#bob").val();
$("#bob").keyup(function(){
if( $("#bob").val().length > 160 )
$("#bob").val(oldtext);
else
oldtext = $("#bob").val();
$("#debug").append("\n+");
});
});
在IE中,无论何时修改
,光标都会跳到末尾
$(document).ready(function(){
$("#bob").keyup(function(){
$("#bob").val($("#bob").val().substring(0,160));
$("#debug").append("\n+");
});
});
$(document).ready(function(){
$("#bob").keyup(function(){
var caretPosition = $("#bob").prop("selectionStart"); // caret position
$("#bob").val($("#bob").val().substring(0,160));
$("#bob").prop({selectionStart: caretPosition, // restore caret position
selectionEnd: caretPosition});
// if start == end, it defines the caret position as selection length == 0
$("#debug").append("\n+");
});
});
$(document).ready(function(){
var oldtext = $("#bob").val();
$("#bob").keyup(function(){
if( $("#bob").val().length > 160 )
$("#bob").val(oldtext);
else
oldtext = $("#bob").val();
$("#debug").append("\n+");
});
});