AJAX调用将元素添加到页面后,Bootstrap Scrollspy停止工作



我使用的是Bootstrap scrollspy插件(v2.0.0),当页面首次加载时,它可以正常工作。

导航栏和内容部分通过ajax调用(添加或删除菜单项)进行更新。在此之后,scrollspy不再突出显示新添加的项目。

如何告诉scrollspy刷新?或者可以手动将scrollspy附加到以下代码中?

  <body data-spy="scroll" data-target=".subnav" data-offset="0">
    <div id="listing">
      <div class="subnav">
        <ul class="nav nav-pills nav-stacked">
          <li><a href="#cat2">Home &amp; Garden</a></li>
          <li><a href="#cat5">Computers &amp; Networking</a></li>
        </ul>
      </div>  
      <div>
        <section id="cat2">...</section>
        <section id="cat5">...</section>
      </div>
    </div>
  </body>

scrollspy('refresh')只需按照名称执行即可!

在我的例子中,我在ajax调用后添加了以下代码:

$('[data-spy="scroll"]').each(function () {
  $(this).scrollspy('refresh');
});

最新更新