如何在主轮播之外重新定位 lightslider.js 控件
How to reposition lightslider.js controls outside of the main carousel
默认情况下,滑块控件位于主转盘内 div(附图中的顶行)。我希望控件单独放置,这样它们就不会出现在图像的顶部(附图中的底线)。
我可以在 lightslider.js 文件的第 186 行看到相关代码,该代码放置和定位轮播控件,但我不知道我必须更改什么才能将控件定位在主控件之外轮播 div.
首先,您必须通过 controls: false
删除默认的 next/prev 按钮。
然后创建您自己的 next/prev 按钮并使用 public 方法(goToPrevSlide()
、goToNextSlide()
)分别将滑块转换为下一张和上一张幻灯片。
Html
<ul id="lightSlider">
<li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-1.jpg">
<img src="http://sachinchoolur.github.io/lightslider/img/cS-1.jpg" />
</li>
<li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-2.jpg">
<img src="http://sachinchoolur.github.io/lightslider/img/cS-2.jpg" />
</li>
</ul>
<button type="button" id="goToPrevSlide">Prev</button>
<button type="button" id="goToNextSlide">Next</button>
Javascript
var slider = $('#lightSlider').lightSlider({
controls: false
});
$('#goToPrevSlide').on('click', function () {
slider.goToPrevSlide();
});
$('#goToNextSlide').on('click', function () {
slider.goToNextSlide();
});
这是 jsfiddle
http://jsfiddle.net/2patspw2/1519/
简单地说,我们可以将 Lightslider 插件 CSS 覆盖为:
.lSSlideOuter {
position: relative;
overflow: visible;
}
并覆盖相对于 .lSSlideWrapper 静态的位置。
.lSSlideWrapper {
position: static;
}
我尝试使用这个
将控制部分移到 .LSSliderOuter
部分之外
jQuery(document).ready(function($){
$('.lSAction').insertBefore('.lSSlideOuter');
});
然后 overflow: hidden
属性 不影响控件,我可以使用 CSS 将它们移到外面。工作得很好。
默认情况下,滑块控件位于主转盘内 div(附图中的顶行)。我希望控件单独放置,这样它们就不会出现在图像的顶部(附图中的底线)。
我可以在 lightslider.js 文件的第 186 行看到相关代码,该代码放置和定位轮播控件,但我不知道我必须更改什么才能将控件定位在主控件之外轮播 div.
首先,您必须通过 controls: false
删除默认的 next/prev 按钮。
然后创建您自己的 next/prev 按钮并使用 public 方法(goToPrevSlide()
、goToNextSlide()
)分别将滑块转换为下一张和上一张幻灯片。
Html
<ul id="lightSlider">
<li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-1.jpg">
<img src="http://sachinchoolur.github.io/lightslider/img/cS-1.jpg" />
</li>
<li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-2.jpg">
<img src="http://sachinchoolur.github.io/lightslider/img/cS-2.jpg" />
</li>
</ul>
<button type="button" id="goToPrevSlide">Prev</button>
<button type="button" id="goToNextSlide">Next</button>
Javascript
var slider = $('#lightSlider').lightSlider({
controls: false
});
$('#goToPrevSlide').on('click', function () {
slider.goToPrevSlide();
});
$('#goToNextSlide').on('click', function () {
slider.goToNextSlide();
});
这是 jsfiddle http://jsfiddle.net/2patspw2/1519/
简单地说,我们可以将 Lightslider 插件 CSS 覆盖为:
.lSSlideOuter {
position: relative;
overflow: visible;
}
并覆盖相对于 .lSSlideWrapper 静态的位置。
.lSSlideWrapper {
position: static;
}
我尝试使用这个
将控制部分移到.LSSliderOuter
部分之外
jQuery(document).ready(function($){
$('.lSAction').insertBefore('.lSSlideOuter');
});
然后 overflow: hidden
属性 不影响控件,我可以使用 CSS 将它们移到外面。工作得很好。