Flexslider manualControls无法正常工作

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

Flexslider:

 $(window).load(function() { $('.flexslider').flexslider({ controlsContainer: ".slidercontainer", controlNav: true, manualControls: ".flex-control-nav li", }); });  

滑块和导航:

  
  • slide1
  • slide2
  • 1
  • 2

你修好了吗? 如果没有,答案是因为FlexSlider在插件中仍然有一个实时事件 – 但是jQuery已经弃用了这个。

要解决这个问题; 打开jQuery.flexslider.js并为“live”执行查找/替换,将其替换为“on”。 我实际上搜索了“.live(”并替换为“.on(”只是为了确保我只有事件监听器。有2次出现。

而已。 完美的工作!

https://github.com/woothemes/FlexSlider/issues/351

听起来有很多事情要发生。

我主要使用Chrome,无论这个主题是什么,我都会发生这种情况:

http://www.templatemonster.com/demo/42317.html

它曾说过的FlexSlider版本: jQuery FlexSlider v1.8

但我找到了解决方法:

http://wordpress.org/support/topic/chrome-bug-with-flexslider-plugin

线程结束,一个人发布了他修复的另一个网站的链接! 我在下面发布了必要的行:

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"; 

希望有所帮助。

示例链接: http : //flexslider.woothemes.com/

您可以直接使用代码

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

我刚刚遇到了同样的问题,这是因为在chrome的’chrome:// flags’页面中启用了触摸事件,关闭触摸事件后,flexslider导航箭头和点将起作用。

代码中有几个地方flexslider试图解决iOS错误,但这样做完全禁用了不支持iOS的触控浏览器上的点击事件。