我已经使用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>
滑块和导航:
<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>
答案 0 :(得分:10)
你修好了吗?如果没有,答案是因为FlexSlider在插件中仍然有一个实时事件 - 但是jQuery已经弃用了它。
修复它;打开jQuery.flexslider.js并为“live”执行查找/替换,将其替换为“on”。我实际上搜索了“.live(”并替换为“.on(”只是为了确保我只有事件监听器。有2次出现。
就是这样。效果很好!
答案 1 :(得分: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";
希望有所帮助。
答案 2 :(得分:0)
示例链接:http://flexslider.woothemes.com/
您可以直接使用代码
$(window).load(function() {
$('.flexslider').flexslider({
animation: "slide"
});
});
答案 3 :(得分:0)
我遇到了同样的问题,原因是“&nbsp; chrome:// flags&#39; Chrome页面,关闭触摸事件后,flexslider导航箭头和点将起作用。
代码中有几个地方,flexslider试图解决iOS错误,但这样做完全禁用了不适合iOS的触控浏览器上的点击事件。
答案 4 :(得分:0)
我使用的是 2.7.2 版,我所做的是评论了 onTouchMove = function(e) {}
中的所有内容
在那之后,一切仍然正常,最重要的是错误信息消失了。