2012-02-18 72 views
9

我使用Bootstrap Scrollspy插件(v2.0.0),它在页面首次加载时工作正常。引导Scrollspy在AJAX调用后停止工作将元素添加到页面

导航栏以及内容部分通过ajax调用(添加或删除菜单项)进行更新。在此滚动不会突出显示新添加的项目。

如何告诉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> 

回答

13

scrollspy('刷新')只会做名称所说的!

在我来说,我加入了follwing代码Ajax调用后:

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

注意,$(这)表示元素从滚动,而不是导航栏本身被监视。因此,如果您正在观看滚动的主体,您可以轻松执行$('body')。scrollspy('refresh'); – cmcculloh 2012-03-01 16:36:16

相关问题