javascript - 当我为来自服务器的数据实现一些更 Angular js 代码时,轮播停止工作

标签 javascript jquery angularjs

早些时候,我实现了旋转木马(silder),效果很好。

我之前的代码:

  <div class="wrapper">
    <div class="jcarousel-wrapper" style="margin:5px auto;">
                 <div class="jcarousel ">
                    <ul class="row" style="border-bottom: 1px solid #f68200;padding-bottom: 0px;">
                       <li>
                          <div class="span3">
                             <a href="#"><img src="./images/homeSlider01.jpg" style="width: 225px;height: 220px;"/></a>
                             <p ng-repeat="label in carouselOfLocationLabels | filter:'Location6'" class="home-slider1" style="text-align:left;"> {{label.text}}</p>
                          </div>
                       </li>
                       .......
                       .......                  
                    </ul>
                 </div>
                 <a href="#" class="jcarousel-control-prev">prev</a>
                 <a href="#" class="jcarousel-control-next">next</a>
              </div>
           </div>
         </div>

然后我修改了几行以便从服务器响应中获取图像。就是这样。

这里,当前代码是:

    <div class="wrapper">
           <div class="jcarousel-wrapper" style="margin:5px auto;">
                 <div class="jcarousel ">
                 <input type="hidden" id="slider1length" value="{{featuredListSlider1Length}}"/>
                    <ul class="row" style="border-bottom: 1px solid #f68200;padding-bottom: 0px;">
                       <li class="featuredListSlider1" ng-repeat="label in featuredListSlider1">
                          <div  class="span3">
                             <div id="featuredListSlider1{{$index}}" style="margin: -3.5%;">{{label.url}}</div>
                             <p class="home-slider1" style="text-align:left;"> {{label.title}}{{label.price}}</p>
                          </div>
                       </li>
                    </ul>
                 </div>
                 <a href="#" class="jcarousel-control-prev">prev</a>
                 <a href="#" class="jcarousel-control-next">next</a>
              </div>
           </div>
        </div>

它以相同的格式显示,服务器响应图像良好,但它停止滑动。

在控制台中,我只发现一个错误:(当我单击上一个或下一个控件时)

 "Uncaught TypeError: Cannot read property 'index' of null "

不知道为什么它停止工作。

如有任何建议,我们将不胜感激。

最佳答案

根据 jCarousel ( https://github.com/jsor/jcarousel/blob/master/dist/jquery.jcarousel.js ) 的代码,我的猜测是它检测到 <input> <div class="jcarousel "> 内的元素并将其视为不包含列表。是否可以将其移至轮播 div 之外?

<div class="wrapper">
       <div class="jcarousel-wrapper" style="margin:5px auto;">
             <input type="hidden" id="slider1length" value="{{featuredListSlider1Length}}"/>
             <div class="jcarousel ">
                <ul class="row" style="border-bottom: 1px solid #f68200;padding-bottom: 0px;">
                   <li class="featuredListSlider1" ng-repeat="label in featuredListSlider1">
                      <div  class="span3">
                         <div id="featuredListSlider1{{$index}}" style="margin: -3.5%;">{{label.url}}</div>
                         <p class="home-slider1" style="text-align:left;"> {{label.title}}{{label.price}}</p>
                      </div>
                   </li>
                </ul>
             </div>
             <a href="#" class="jcarousel-control-prev">prev</a>
             <a href="#" class="jcarousel-control-next">next</a>
          </div>
       </div>
    </div>

关于javascript - 当我为来自服务器的数据实现一些更 Angular js 代码时,轮播停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25446041/

相关文章:

javascript - 如何用Ajax重写当前页面的所有内容?

javascript - 在 Chrome 中拖动时锁定鼠标光标

jquery - 正则表达式允许字符串在输入开头确定

javascript - 如何在 Javascript 中引用 MVC 内容文件夹

javascript - 元素相对于视口(viewport)的位置

javascript - 根据 select 的选项值组成链接

javascript - 用于一个祖先的多个元素的 JQuery 选择器

javascript - 如何获取调用函数的元素的id

angularjs - Angular JS 应用程序无法在 Grunt Compile 上正确构建,(缩小)在 Grunt watch/build 上运行良好

javascript - 如何在 Angular js 中的一种输入类型中使用两个 ng-modal?