Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Flexslider手动控制装置不工作_Jquery_Navigation_Flexslider - Fatal编程技术网

Jquery Flexslider手动控制装置不工作

Jquery Flexslider手动控制装置不工作,jquery,navigation,flexslider,Jquery,Navigation,Flexslider,我已经用Flexslider创建了一个滑块,我正在尝试使用manualControls:创建一个导航菜单,但是链接不起作用。以下是flexslider和滑块/导航本身的代码: Flexslider: <script type="text/javascript" charset="utf-8"> $(window).load(function() { $('.flexslider').flexslider({ controlsContainer: ".slid

我已经用Flexslider创建了一个滑块,我正在尝试使用manualControls:创建一个导航菜单,但是链接不起作用。以下是flexslider和滑块/导航本身的代码:

Flexslider:

 <script type="text/javascript" charset="utf-8">
  $(window).load(function() {
    $('.flexslider').flexslider({
      controlsContainer: ".slidercontainer",
      controlNav: true,
      manualControls: ".flex-control-nav li",
      }); 
 });
 </script>  

$(窗口)。加载(函数(){
$('.flexslider').flexslider({
控件容器:“.slidercontainer”,
控制导航:是的,
手动控制:“.flex控制导航李”,
}); 
});
滑块和导航:

    <div class="slidercontainer">
        <div class="flexslider">
            <ul class="slides">
              <li>slide1</li>
              <li>slide2</li>
            </ul>
            <ul class="flex-control-nav">
              <li>1</li>
              <li>2</li>
            </ul>
    </div>          
    </div>

  • 幻灯片1
  • 幻灯片2
  • 一,
  • 二,
示例链接:

您可以直接简单地使用代码

$(window).load(function() {
  $('.flexslider').flexslider({
    animation: "slide"
  });
});

你把这个修好了吗?如果没有,答案是因为FlexSlider在插件中仍然有一个活动事件,但是jQuery已经不赞成这样做

修复它;打开jQuery.flexslider.js并对“live”进行查找/替换,将其替换为“on”。我实际上搜索了“.live”()并替换为“.on”()以确保我只得到了事件侦听器。共出现了两次

就是这样。非常好用!

听起来好像有很多事情要做

我主要使用的是Chrome,无论这个主题是什么,我都能做到:

FlexSlider的版本,它说:
jQuery FlexSlider v1.8

但我找到了解决办法:

最后,一个家伙发布了一个链接到他修复的另一个站点!我已经发布了以下必要的行:

jquery.flexslider.js中的第34行

slider.eventType = ('ontouchstart' in document.documentElement) ? 'touchstart' : 'click';
我将其替换为以下两行:

slider.touch = (( "ontouchstart" in window ) || ( window.navigator.msPointerEnabled ) || window.DocumentTouch && document instanceof DocumentTouch) && slider.vars.touch;
slider.eventType = "click touchend MSPointerUp";

希望这能有所帮助。

我刚刚遇到了同样的问题,这是由于在'chrome://flags关闭触摸事件后,flexslider导航箭头和点将工作


代码中有几个地方flexslider试图解释iOS错误,但这样做会完全禁用非iOS的支持触摸的浏览器上的单击事件。

不太确定您的意思我很确定您必须定义导航容器。从所有示例来看,似乎都是这样。它将一个活动类应用于fi导航中的rst链接,因此它知道应该发生什么,但单击时什么也没有发生。只是这样做了。效果很好!令人惊讶的是,他们还没有更新此内容。谢谢。解决了我的问题。