使用jquery或javascript将菜单显示到顶部

使用jquery或javascript将菜单显示到顶部,javascript,jquery,navigationbar,mcustomscrollbar,Javascript,Jquery,Navigationbar,Mcustomscrollbar,在我的项目中我有左导航左导航包含一个带有菜单的滚动。问题是,当我打开菜单时,子菜单项会显示,而在我们必须滚动后,一些项会隐藏。所以我想 显示在顶部时,我打开菜单,菜单显示在顶部,用户无需滚动,因此如何实现 例如: 您好,您可以使用javascript或jquery进行此操作,您需要阅读javascript中的scrollIntoView()方法及其工作原理 你可以检查和阅读 因此,首先需要在要显示的特定div上添加id或class 假设我有这样的HTML代码 <li class="

在我的项目中我有左导航左导航包含一个带有菜单的滚动。问题是,当我打开菜单时,子菜单项会显示,而在我们必须滚动后,一些项会隐藏。所以我想 显示在顶部时,我打开菜单,菜单显示在顶部,用户无需滚动,因此如何实现

例如:


您好,您可以使用javascriptjquery进行此操作,您需要阅读javascript中的
scrollIntoView()
方法及其工作原理

你可以检查和阅读

因此,首先需要在要显示的特定
div
上添加
id
class

假设我有这样的HTML代码

<li class="treeview" id="view"> // this treeview class is for showing submenu
  <a>Menu 4</a>
  <ul>
    <li>item 1</li>
    <li>item 1</li>
    <li>item 1</li>
  </ul>
<li>
谢谢你完美的回答
$(".treeview").click(function(e){
      setTimeout(() => {
         var element = document.getElementById(e.currentTarget.id); // e.currentTarget.id give you current id when ever you click li or div this will give you view 
         if(e.currentTarget.id){
            element.scrollIntoView({
               behavior: 'smooth', block: 'nearest', inline: 'start',
            });
         }
      }, 500);  
 });