Javascript 前进和后退按钮在插入符号位置起作用

Javascript 前进和后退按钮在插入符号位置起作用,javascript,html,button,input,onclick,Javascript,Html,Button,Input,Onclick,玩键盘登录的想法。 我需要做前进和后退按钮。 后退和前进按钮似乎处于插入符号位置。 输入被禁用,仅使用按钮点击。 如何调整按钮A和B,使其不仅在值的末尾键入,而且将字母放置在插入符号位置 函数A(){document.getElementById('user').value+=“A”} 函数B(){document.getElementById('user')。值+=“B”} 函数BackSpace(){document.getElementById('user')。value=documen

玩键盘登录的想法。 我需要做前进和后退按钮。 后退和前进按钮似乎处于插入符号位置。 输入被禁用,仅使用按钮点击。 如何调整按钮A和B,使其不仅在值的末尾键入,而且将字母放置在插入符号位置

函数A(){document.getElementById('user').value+=“A”}
函数B(){document.getElementById('user')。值+=“B”}
函数BackSpace(){document.getElementById('user')。value=document.getElementById('user')。value.substring(0,document.getElementById('user')。value.length-1);}
函数Back(){
user.focus();
console.log(user.selectionStart-1);
如果(user.selectionStart>0){user.focus();
user.selectionEnd=user.selectionStart-1;
user.selectionStart=user.selectionStart;}
函数Forward(){
console.log(user.selectionStart);
user.focus();
user.selectionEnd=user.selectionStart+1;
user.selectionStart=user.selectionStart+1;}

用户名
A.
B
退格
返回
向前地

我使用
选择开始
选择结束
来检查插入符号的位置

这是你要找的东西

String.prototype.replaceBetween = function(start, end, what) {
    return this.substring(0, start) + what + this.substring(end);
};
function writeValue(value) {
  var userInput = document.getElementById('user');
  var inputValue = document.getElementById('user').value;

  if (userInput.selectionStart === userInput.selectionEnd) {
    inputValue = inputValue.substring(0, userInput.selectionStart) + value + inputValue.substring(userInput.selectionStart, inputValue.length);
  } else {
    inputValue = inputValue.replaceBetween(userInput.selectionStart, userInput.selectionEnd, value);
  }
  document.getElementById('user').value = inputValue;
}

function A(){ 
  writeValue("A");
}
function B(){
  writeValue("B");
}

请参阅

这在ie上不起作用我如何才能使其成为可能您测试了哪个ie版本?如果您将
放在
之外,我使用了ie 11.0版本。那就行了:)如果行的话请告诉我。我喜欢听你的反馈