免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

javascript如何實現(xiàn)自動左滑的輪播圖

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

隰縣網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,隰縣網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為隰縣近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的隰縣做網(wǎng)站的公司定做!

最近做項目總是只會調(diào)用別人做好的各種插件效果,想起很久沒來自己寫點小插件,久了會忘記的,就趕緊來補一下,前端程序員必備,實現(xiàn)一個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張圖片,由于要實現(xiàn)無縫銜接,即最后一張順暢地跳轉(zhuǎn)到第一張,故在寫html的時候,再重復了最后一張圖片,然后通過直接定位,在輪播到最后一張圖片的時候,將整個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中需要注意的是定位的時候,整個外部的p是相對定位,而里面的內(nèi)容ul則相對于外部p進行絕對定位,通過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); // 處理無縫銜接小圓點的跳轉(zhuǎn)
	}
	number++;
	var imageLeft = -1000 * number;
	$('#slide_img').animate({left: imageLeft});
}	
var timer = setInterval(startSlide,3000);



//小圓點的輪播實現(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');
	}
}

//初始化小圓點
function initRadius() {
	var lis = $('#num li');
	lis.eq(0).css('background-color', 'red');
}


//左右按鈕的實現(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);
});


//小圓點的點擊實現(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)于定時器的使用,其中,關(guān)于dom的使用,好久沒用啊,感覺很不熟悉。。自己得多來加強。。

感謝你能夠認真閱讀完這篇文章,希望小編分享javascript如何實現(xiàn)自動左滑的輪播圖內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細的解決方法等著你來學習!

分享名稱:javascript如何實現(xiàn)自動左滑的輪播圖
文章源于:http://m.newbst.com/article14/pgcege.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司GoogleChatGPT微信公眾號全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)