2

我正在尝试暂停使用 flexslider。这是我正在使用的代码。

$(window).load(function() {
$('.flexslider').flexslider({
    slideshowSpeed: 3000,
    animationDuration: 1100,
    directionNav: false,
    controlNav: true,
    pausePlay: true,
    pauseText: 'Pause',
    playText: 'Play', 

});
});

它只显示暂停的元素和文本,但不影响任何内容。我究竟做错了什么?

编辑:

查看 flexslider 代码,我认为这一定是处理按钮的部分。实际代码有点超出我的想象,但我看不到任何看起来像点击事件处理程序的东西。

      //////////////////////////////////////////////////////////////////

  //////////////////////////////////////////////////////////////////
  //FlexSlider: Pause/Play
  if (slider.vars.pausePlay) {
    var pausePlayScaffold = $('<div class="flex-pauseplay"><span></span></div>');

    if (slider.containerExists) {
      slider.controlsContainer.append(pausePlayScaffold);
      slider.pausePlay = $('.flex-pauseplay span', slider.controlsContainer);
    } else {
      slider.append(pausePlayScaffold);
      slider.pausePlay = $('.flex-pauseplay span', slider);
    }

    var pausePlayState = (slider.vars.slideshow) ? 'pause' : 'play';
    slider.pausePlay.addClass(pausePlayState).text((pausePlayState == 'pause') ? slider.vars.pauseText : slider.vars.playText);

    slider.pausePlay.bind(slider.eventType, function(event) {
      event.preventDefault();
      if ($(this).hasClass('pause')) {
        slider.pause();
        slider.manualPause = true;
      } else {
        slider.resume();
        slider.manualPause = false;
      }
    });
  }
4

1 回答 1

1

原来问题出在我的 CSS 上。我已经移动了flex-control-nav有序列表,它似乎阻止了点击事件,它一定已经覆盖了flex-pauseplay div。

于 2012-06-18T11:06:02.293 回答