這篇文章主要介紹了javascript如何實(shí)現(xiàn)自動(dòng)左滑的輪播圖,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

隰縣網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,隰縣網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為隰縣近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營(yíng)銷網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的隰縣做網(wǎng)站的公司定做!
最近做項(xiàng)目總是只會(huì)調(diào)用別人做好的各種插件效果,想起很久沒來自己寫點(diǎn)小插件,久了會(huì)忘記的,就趕緊來補(bǔ)一下,前端程序員必備,實(shí)現(xiàn)一個(gè)js輪播圖。
html代碼:
<!DOCTYPE HTML>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="./demo.css">
</head>
<body>
<div class="slide">
<div class="img">
<ul id="slide_img">
<li><img src="./img/timgZQQ905MD.jpg"></li> <!--處理無縫銜接的圖片-->
<li><img src="./img/1486293868523.jpg"></li>
<li><img src="./img/timg1.jpg"></li>
<li><img src="./img/timg2.jpg"></li>
<li><img src="./img/timgZQQ905MD.jpg"></li>
</ul>
</div>
<ul id="num">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<div class="btn">
<span id="left"><</span>
<span id="right">></span>
</div>
</div>
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<!--通過百度cdn地址引用jQuery庫-->
<script type="text/javascript" src="./demo.js"></script>
</body>此次的小demo樣例用了4張圖片,由于要實(shí)現(xiàn)無縫銜接,即最后一張順暢地跳轉(zhuǎn)到第一張,故在寫html的時(shí)候,再重復(fù)了最后一張圖片,然后通過直接定位,在輪播到最后一張圖片的時(shí)候,將整個(gè)ul定位到第一張,由于第一張和最后一張是一樣的,故效果看起來則順暢自然的輪播。
css代碼:
*{
margin: 0;
padding: 0;
}
.slide{
position: relative;
width: 1000px;
height: 500px;
margin: 40px auto;
overflow: hidden;
}
.img ul{
position: absolute;
left: -1000px;
width: 5000px;
}
.img li{
list-style-type: none;
float: left;
}
img{
width: 1000px;
height: 500px;
}
#num li{
list-style-type: none;
background-color: white;
border: 1px solid red;
border-radius: 100px;
float: left;
width: 10px;
height: 10px;
margin: 10px;
cursor: pointer;
}
#num {
position: absolute;
top: 450px;
left: 800px;
}
.btn{
font-size: 30px;
color: gray;
}
#left{
position: absolute;
top: 230px;
left: 40px;
cursor: pointer;
}
#right{
position: absolute;
top: 230px;
right: 40px;
cursor: pointer;
}css中需要注意的是定位的時(shí)候,整個(gè)外部的p是相對(duì)定位,而里面的內(nèi)容ul則相對(duì)于外部p進(jìn)行絕對(duì)定位,通過left,top等來設(shè)置位置
js代碼:
$(document).ready(function () {
initRadius();
});
var number = 1; //設(shè)置為全局變量
//輪播圖圖片主體
function startSlide() {
dealRadius(number);
if(number == 4) {
number = 0;
$('#slide_img').css({left: '0px'}); //處理無縫銜接圖
dealRadius(0); // 處理無縫銜接小圓點(diǎn)的跳轉(zhuǎn)
}
number++;
var imageLeft = -1000 * number;
$('#slide_img').animate({left: imageLeft});
}
var timer = setInterval(startSlide,3000);
//小圓點(diǎn)的輪播實(shí)現(xiàn)
function dealRadius(num) {
var lis = $('#num li');
lis.eq(num).css('background-color', 'red');
for(var i = 0; i < num; i++) {
lis.eq(i).css('background-color','white');
}
for(var i = num + 1; i < 4; i++) {
lis.eq(i).css('background-color','white');
}
}
//初始化小圓點(diǎn)
function initRadius() {
var lis = $('#num li');
lis.eq(0).css('background-color', 'red');
}
//左右按鈕的實(shí)現(xiàn)
$('#left').mousedown (function() {
clearInterval(timer);
if(number == 0) {
$('#slide_img').css({left: '-4000px'});
number = 4;
}
var imageLeft = -1000 * (number-1);
$('#slide_img').animate({left: imageLeft});
number--;
if(number == 0) {
dealRadius(3);
} else {
dealRadius(number-1);
}
});
$('#left').mouseup(function() {
timer = setInterval(startSlide,3000);
});
$('#right').mousedown (function() {
clearInterval(timer);
if(number == 4) {
number = 0;
$('#slide_img').css({left: '0px'}); //處理無縫銜接圖
}
var imageLeft = -1000 * (number+1);
$('#slide_img').animate({left: imageLeft});
dealRadius(number);
number++;
});
$('#right').mouseup(function() {
timer = setInterval(startSlide,3000);
});
//小圓點(diǎn)的點(diǎn)擊實(shí)現(xiàn)
$('#num').on('click','li',function(){
clearInterval(timer);
var _number = $(this).index() + 1;
number = _number
dealRadius(number-1);
var imageLeft = -1000 * number;
$('#slide_img').animate({left: imageLeft});
timer = setInterval(startSlide,3000);
});js代碼中,首先要知道關(guān)于定時(shí)器的使用,其中,關(guān)于dom的使用,好久沒用啊,感覺很不熟悉。。自己得多來加強(qiáng)。。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享javascript如何實(shí)現(xiàn)自動(dòng)左滑的輪播圖內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
分享名稱:javascript如何實(shí)現(xiàn)自動(dòng)左滑的輪播圖
文章源于:http://www.chinadenli.net/article14/pgcege.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站設(shè)計(jì)公司、Google、ChatGPT、微信公眾號(hào)、全網(wǎng)營(yíng)銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)