Javascript 理解scrollIntoView()

Javascript 理解scrollIntoView(),javascript,Javascript,我对这真的很陌生。请对我耐心点。但是,scrollIntoView()是否内置于chrome上?或者我需要为它创建一个函数才能工作?我不知道jquery是否更适合使用 function scroll() { var elmnt = document.getElementById("g[0].sidWORK_ORDER_NOTES"); //g[0].sidWORK_ORDER_NOTES is id of TEXTAREA elmnt.scrollIntoView(); } 这里附

我对这真的很陌生。请对我耐心点。但是,scrollIntoView()是否内置于chrome上?或者我需要为它创建一个函数才能工作?我不知道jquery是否更适合使用

function scroll() {
  var elmnt = document.getElementById("g[0].sidWORK_ORDER_NOTES");
//g[0].sidWORK_ORDER_NOTES is id of TEXTAREA
  elmnt.scrollIntoView();
}

这里附上一张节目的照片。输入3190并按enter/tab键后,光标位于单词SAMPLE1处,但滚动条位于SAMPLE3处。如何滚动光标所在的位置?(样本1)

我建议:

首先检查您的elmnt是否实际具有元素值“SAMPLE1”

其次,
scrollIntoView()
函数接受一个带有“block”键的对象,该对象可以被赋予不同的值,如“start”、“end”、“nearest”等。您可以尝试这些值,并在UI中查看输出行为。当你们在做垂直滚动时,带其中一个值的“block”键可能会帮助你们实现你们想要实现的目标

第三,在运行scrollIntoView()方法之前,检查元素是否存在,如-

if(elmnt) {
scrollIntoView({'block': 'start'});
}
请参阅下文:


我认为它的工作原理与您期望的不同。滚动到视图仅当textarea不在视口中时滚动。它不会滚动元素id看起来有问题的TextArea的内容。@evolutionxbox ohh好的。我可能理解错了。非常感谢。有没有什么方法可以让滚动条与光标所在的位置相同?我真的不知道。当用户开始键入时,文本区域应该滚动到光标所在的位置