javascript - 单击输入时滚动到文本末尾
问题描述
我正在创建输入元素。我想首先点击输入,文本被选中,然后第二次点击插入符号移动到最后一个位置(插入符号总是在最后一个位置)。我做到了(见我的代码)。
但是当输入的宽度小于 value.length 时,在第二次单击时我在 IE 11 上看不到插入符号。
如何在第二次单击时将值滚动到最后一个位置?
我的演示,在 IE 上打开它:https ://www.w3schools.com/code/tryit.asp?filename=G3SVZ4LTU7G5
function selectAllText() {
var input = document.getElementById("demo");
input.setSelectionRange(0, input.value.length);
}
function moveEndCaret(event) {
event.preventDefault();
var input = document.getElementById("demo");
input.setSelectionRange(input.value.length, input.value.length);
input.focus();
}
input {
padding: 0 10px 0 10px;
height: 30px;
width: 30px;
}
<!DOCTYPE html>
<html>
<body>
<input id="demo" name="gender" value="123456789" type="tel" onfocus="selectAllText()" onmousedown="moveEndCaret(event)">
</body>
</html>
解决方案
推荐阅读
- xpath - 谁能帮我整理一下我的xpaths?我正在从论坛中寻找特定信息,但我不知道为什么我不断收到错误消息
- vue.js - OpenLayers Vue.Js中多边形每个点的样式
- angular - Angular Material Button Toggle 比普通按钮大得多?
- kotlin - 改造成功后将数据插入房间数据库,协程问题
- python - 脚本移动到创建 venv 后的子目录,无法找到最初安装的 pip 包
- .net-core - 依赖注入和必需的默认构造函数
- c++ - 加权随机选择的 Walkers Alias 方法并不比线性搜索快(在我的实现中)
- javascript - 强制访问权限 - AuthDirective 缺点
- javascript - 在切换文本时保持恒定的按钮宽度。(CSS 中没有固定宽度)
- sql-server - Pyodbc MS SQL Server - 中文变成乱码