Javascript 函数参数导致光标跳转到。keyup
我有一个函数,它假设通过diff textarea传递数据,但是,光标一直跳到文本的末尾Javascript 函数参数导致光标跳转到。keyup,javascript,jquery,html,google-chrome,jquery-ui,Javascript,Jquery,Html,Google Chrome,Jquery Ui,我有一个函数,它假设通过diff textarea传递数据,但是,光标一直跳到文本的末尾 function KeepReferencesInSync(referenceInput) { $(referenceInput).keyup(function () { $("input[name=Reference]").val($(this).val()); } )} 您可以尝试这种方法。这不是最先进的技术,但很管用 //创建区域/输入/元素列表 变量zoneList=[$'zon
function KeepReferencesInSync(referenceInput) {
$(referenceInput).keyup(function () {
$("input[name=Reference]").val($(this).val());
}
)}
您可以尝试这种方法。这不是最先进的技术,但很管用 //创建区域/输入/元素列表 变量zoneList=[$'zone1',$'zone2',$'zone3']; //对于每个区域 $.eachzoneList、functionindex、zoneForEvent{ //附加键控事件 区域预览。在“键控”上,功能{ //获取触发事件的根区域信息 var rootZoneId=this.id; var rootZoneValue=this.value; //在每个区域上循环 $.eachzoneList、functionindex、zoneDestination{ //如果区域目标不是根区域 如果zoneDestination.id!==rootZoneId{ //复制根元素的值 zoneDestination.valrootZoneValue; } }; }; }; 我找到了解决办法 我需要记录光标位置并设置[setSelectionRange],以确保光标不会跳转。见下文
function KeepReferencesInSync(referenceInput) {
$(referenceInput).on('keyup', function () {
//get selection position
var start = this.selectionStart,
end = this.selectionEnd;
$("input[name=Reference]").val($(this).val());
//set the range
this.setSelectionRange(start, end);
})
}
你能解释一下吗?请提供一个提示,用户将根据单击的单选按钮更改参考文本区域。这样做的目的是让textarea看起来像一个单独的字段,通过不同的选项传输数据。在其他浏览器上似乎工作得很好。问题在于Chrome。设置输入字段的值确实会移动光标,您必须使用选择API记住光标位置,并在修改输入后将其重置。请格式化您的代码,让我们在您之后清理,以便我们可以尝试帮助您,这有点粗鲁。