Flexslider manualControls无法正常工作
我用Flexslider创建了一个滑块,我正在尝试使用manualControls:创建导航菜单,但链接不起作用。 这是flexslider和滑块/导航本身的代码:
Flexslider:
$(window).load(function() { $('.flexslider').flexslider({ controlsContainer: ".slidercontainer", controlNav: true, manualControls: ".flex-control-nav li", }); });
滑块和导航:
你修好了吗? 如果没有,答案是因为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的触控浏览器上的点击事件。