gpt4 book ai didi

javascript - 调整简单 slider

转载 作者:行者123 更新时间:2023-11-28 05:54:32 26 4
gpt4 key购买 nike

我正在使用这个非常基本的 slider ,它可以正常工作 - 但是当页面上有多个 slider 时,当单击左右按钮中的一个时,它们会同时滑动。

如何使每一个都独一无二?

感谢任何帮助

谢谢

可在此处找到工作示例 -> https://codepen.io/zuraizm/pen/vGDHl <-

jQuery(document).ready(function ($) {
$('#checkbox').change(function(){
setInterval(function () {
moveRight();
}, 3000);
});

var slideCount = $('#slider ul li').length;
var slideWidth = $('#slider ul li').width();
var slideHeight = $('#slider ul li').height();
var sliderUlWidth = slideCount * slideWidth;

$('#slider').css({ width: slideWidth, height: slideHeight });
$('#slider ul').css({ width: sliderUlWidth, marginLeft: - slideWidth });
$('#slider ul li:last-child').prependTo('#slider ul');

function moveLeft() {
$('#slider ul').animate({
left: + slideWidth
}, 200, function () {
$('#slider ul li:last-child').prependTo('#slider ul');
$('#slider ul').css('left', '');
});
};

function moveRight() {
$('#slider ul').animate({
left: - slideWidth
}, 200, function () {
$('#slider ul li:first-child').appendTo('#slider ul');
$('#slider ul').css('left', '');
});
};

$('a.control_prev').click(function () {
moveLeft();
});

$('a.control_next').click(function () {
moveRight();
});

});
#slider {
position: relative;
overflow: hidden;
margin: 20px auto 0 auto;
border-radius: 4px;
width: 100% !important;
height: auto !important;
}

#slider ul {
position: relative;
margin: 0;
padding: 0;
height: 200px;
list-style: none;
}

#slider ul li {
position: relative;
display: block;
float: left;
margin: 0;
padding: 0;
width: auto;
height: auto;
background: #ccc;
text-align: center;
line-height: 300px;
}

a.control_prev, a.control_next, a.control_prev_1, a.control_next_1 {
position: absolute;
top: 40%;
z-index: 999;
display: block;
padding: 4% 3%;
width: auto;
height: auto;
background: #2a2a2a;
color: #fff;
text-decoration: none;
font-weight: 600;
font-size: 18px;
opacity: 0.8;
cursor: pointer;
}

a.control_prev:hover, a.control_prev_1:hover, a.control_next:hover, a.control_next_1:hover {
opacity: 1;
-webkit-transition: all 0.2s ease;
}

a.control_prev, a.control_prev_1 {
border-radius: 0 2px 2px 0;
}

a.control_next, a.control_next_1 {
right: 0;
border-radius: 2px 0 0 2px;
}

.slider_option {
position: relative;
width: 100%;
margin: 10px auto;
}

.slider_option > label {
padding-top: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>


<div id="slider">
<a href="javascript:void(0);" class="control_next">>></a>
<a href="javascript:void(0);" class="control_prev"><</a>
<ul>
<li><img src="//farm6.static.flickr.com/5224/5658667829_2bb7d42a9c_m.jpg" alt="" class="img-responsive" /></li>
<li><img src="//farm6.static.flickr.com/5224/5658667829_2bb7d42a9c_m.jpg" alt="" class="img-responsive" /></li>
<li><img src="//farm6.static.flickr.com/5224/5658667829_2bb7d42a9c_m.jpg" alt="" class="img-responsive" /></li>
<li><img src="//farm6.static.flickr.com/5224/5658667829_2bb7d42a9c_m.jpg" alt="" class="img-responsive" /></li>
</ul>
</div>

<div class="slider_option">
<input type="checkbox" id="checkbox">
<label for="checkbox">Autoplay Slider</label>
</div>

最佳答案

您的所有代码都基于 HTML id 属性寻址元素,这些属性对于页面上的单个元素应该是唯一的。

既然您已经在使用 jQuery,我建议您继续阅读关于构建您的函数作为 plugin 的一部分的内容。可以应用于页面上的多个元素。

关于javascript - 调整简单 slider ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37132693/

26 4 0
文章推荐: html - 从数组中拉取数据到
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com