只需要在嵌套组件中使用scrollIntoView(),而不是整个页面Javascript,React

时间:2018-05-25 03:03:22

标签: javascript html css reactjs

我正在开发一个React项目,其中一个消息传递组件嵌套在一个show组件中。我试图通过使用scrollIntoView javascript函数将消息传递组件中的滚动到最后一条消息。但是,当调用该函数时,整个show组件页面都集中在消息上,当我希望页面在渲染时从顶部开始,并且只让最后一条消息成为该组件的焦点。

我尝试在show组件中拆分组件并渲染消息,然后在那里调用scrollIntoView,但这不起作用。

有没有办法将滚动仅在组件内而不是整个页面本身?任何提示或方向将不胜感激。

组件的代码很长而且不相关,所以如果需要我可以简化它。

我在嵌套的消息传递组件中使用以下函数:

  scrollLastMessageIntoView() {
    const items = document.querySelectorAll('.each-message-box');
    const last = items[items.length - 1];
    if (last) {
      last.scrollIntoView();
    }
  } 

0 个答案:

没有答案