javascript - 指定文本区域内的焦点位置

标签 javascript focus

我有一个文本区域...

<textarea>
Some writing here
*
Then some more on another line
</textarea>

我想做的是让用户关注 * 所在的位置。这可能吗?

最佳答案

使用以下函数在文本区域内设置选择。

function setSelRange(inputEl, selStart, selEnd) { 
   if (inputEl.setSelectionRange) { 
     inputEl.focus(); 
     inputEl.setSelectionRange(selStart, selEnd); 
   } else if (inputEl.createTextRange) { 
     var range = inputEl.createTextRange(); 
     range.collapse(true); 
     range.moveEnd('character', selEnd); 
     range.moveStart('character', selStart); 
     range.select(); 
   } 
}
// From http://www.webmasterworld.com/forum91/4527.htm

因此,在您的情况下,您可以搜索 * 字符的位置并在调用中使用该值,如下所示:

var pos = 17; // Set this to the position of the * character.
setSelRange(document.getElementById('textareaId'), pos, pos);

关于javascript - 指定文本区域内的焦点位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1552567/

相关文章:

c# - 在 C# 中制作一个不可聚焦的表单

css - 启用 :focus only on keyboard use (or tab press)

javascript - 当我将 KnockoutJS 导入我正在测试的 ViewModel 时,为什么 Jest 错误超过最大调用堆栈大小?

javascript - Paper.js 从一条路径绘制多条并行路径

android - 如何删除彩色 EditText 焦点边框

JavaScript:停止选择可拖动元素

javascript - JS 严格模式 : Why does (only! ) Edge 在分配样式属性时提示

javascript - 是否可以通过外部方式从 WebApp 的内存 javascript 对象中获取数据?

javascript - 将 d3.js 图表的平移限制为一个方向

c# - WPF 的 IsKeyboardFocusWithin 属性的 UWP 替代方案