Angular UI bootstrap轮播中奇怪的滑动行为

时间:2016-03-08 10:38:03

标签: angularjs twitter-bootstrap-3 carousel angular-ui-bootstrap

我正在开展一个项目,我想用旋转木马来显示一些不同的内容。我不会使用ng-repeat动态创建幻灯片,这是因为我必须将一些内容从DOM的其他部分移动到幻灯片中。

我希望链接到每张幻灯片的标题链接,所以如果我点击该链接,它应该滚动到该幻灯片。我设法做到了这一点,但滑动行为并不像预期的那样。这是一个可以显示奇怪行为的plunker:http://plnkr.co/edit/oZrLzRaLb5cAmMBnz4p0?p=preview

<div ng-controller="CarouselDemoCtrl as car">
 <a ng-click="car.active = 0">Slide 1</a>
 <a ng-click="car.active = 1">Slide 2</a>
 <a ng-click="car.active = 2">Slide 3</a>
 <uib-carousel ng-model="" active="car.active" interval="0" no-wrap="true" no-transition="false">
  <uib-slide index="0">
    <div style="background:blue; height:600px;">
      Some content in here
    </div>
  </uib-slide>
  <uib-slide index="1">
    <div style="background:red; height:600px;">
      Some content in here as well
    </div>
  </uib-slide>
  <uib-slide index="2">
    <div style="background:green; height:600px;">
      Some cool content in here
    </div>
  </uib-slide>
 </uib-carousel>
</div>

有关为何会发生这种情况的想法,以及我如何解决这个问题?

注意:我使用angular 1.5.0和ui-bootstrap 1.2.4

祝你好运, 丹尼尔

2 个答案:

答案 0 :(得分:0)

你有安装动画,

或者你不想滑动你可以编辑过渡=&#34; true&#34;禁用它

 <uib-carousel ng-model="" active="car.active" interval="0" no-wrap="true" no-transition="true">

答案 1 :(得分:0)

https://github.com/angular-ui/bootstrap/issues/5601

问题似乎出现在angular-ui代码本身;

在&#39;活跃&#39; &#34; currentIndex = index;&#34;在&#34; self.select(slide [index])之前设置;&#34;通过在它工作之后将其移动来运行