本篇文章给大家介绍jq实现无缝轮播图效果的方法,可以自动轮播,也可以手动点击切换轮播。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
我们在很多的网站上都可以看到轮播图,例如在淘宝、京东这些网站都有轮播图的存在;轮播图的使用范围非常广,banner和animation很容易抓住用户的眼球,所以做好这个也就是一个网页一个app的关键之一。
轮播图有多种实现方式,可以用css实现、用jQuery实现、甚至是用其他框架实现,下面我们就以jQuery方法举例,用jQuery代码做一个自动+手动轮播图片的轮播图效果。
jq实现无缝轮播图效果(自动轮播)的代码示例:
html代码:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>jQuery实现无缝轮播图</title> <link href="css/style.css" rel="stylesheet" type="text/css"/> </head> <body> <div class="banner"> <ul class="img"> <li> <a href="#"><img src="/static/imghwm/default1.png" data-src="img/2.png" class="lazy" alt="jq如何達到無縫輪播圖效果(自動輪播)? (程式碼範例)" ></a> </li> <li> <a href="#"><img src="/static/imghwm/default1.png" data-src="img/2.png" class="lazy" alt="jq如何達到無縫輪播圖效果(自動輪播)? (程式碼範例)" ></a> </li> <li> <a href="#"><img src="/static/imghwm/default1.png" data-src="img/2.png" class="lazy" alt="jq如何達到無縫輪播圖效果(自動輪播)? (程式碼範例)" ></a> </li> <li> <a href="#"><img src="/static/imghwm/default1.png" data-src="img/2.png" class="lazy" alt="jq如何達到無縫輪播圖效果(自動輪播)? (程式碼範例)" ></a> </li> </ul> <ul class="num"> </ul> <div class="btn btn_l"><</div> <div class="btn btn_r">></div> </div> </body> </html>
上面是html代码,代码的结构比较简单,这里解释一下,ul.img标签是要左右移动的,ul.img标签里就是轮播图的主体内容了;然后ul.num标签是提供索引和下标控制符,绑定动画的,会通过jq代码来控制数量与图片一致。btn_l和tn_r类名的div标签是提供左右按钮,这样轮播图就可以点击实现手动的左右滑动。
css代码:
* { padding: 0; margin: 0; list-style: none; } .banner { margin: 100px auto; border: 5px solid #000; width: 1000px; height: 640px; position: relative; overflow: hidden; } .banner .img { width: 5000px; position: absolute; left: 0px; top: 0px; } .banner .img li { float: left; } .banner .img li img { width: 1000px; } /*小圆点的样式*/ .banner .num { position: absolute; right: 40px; bottom: 30px; } .banner .num li { width: 20px; height: 20px; float: left; background: #333; margin-left: 20px; border-radius: 50px; border: 2px solid white; } .banner .num li.on { border: 2px solid #333; background: white } /*两边耳朵的样式*/ .banner .btn { position: absolute; width: 80px; height: 80px; background: rgba(0, 0, 0, 0.7); font-size: 60px; color: white; text-align: center; line-height: 80px; top: 50%; margin-top: -80px; cursor: pointer; display: none; } .banner:hover .btn { display: block; } .banner .btn_l { left: 10px; border-radius: 50% } .banner .btn_r { right: 10px; border-radius: 50% }
我们链接的外部css文件,然后请注意一下各种属性和值。
jquery代码:
首先要引用jquery.js文件
<script type="text/javascript" src="s/jquery-1.7.2.min.js"></script>
注:想要使用jquery来实现各种效果,就必须要先引用jquery.js文件,在使用jquery代码来实现各种效果。
在使用jquery语句来实现轮播效果:
<script> $(function() { var i = 0; var clone = $(".banner .img li").first().clone(); $(".banner .img").append(clone); var size = $(".banner .img li").size(); for(var j = 0; j < size - 1; j++) { $(".banner .num").append("<li></li>"); } $(".banner .num li").first().addClass('on'); //鼠标划入圆点 $(".banner .num li").hover(function() { var index = $(this).index(); i = index; $(".banner .img").stop().animate({ left: -index * 1000 }, 500); $(this).addClass('on').siblings().removeClass('on'); }) /*轮播图自动轮播*/ var t = setInterval(function() { i++; move(); }, 2000); //对banner定时器的操作 $(".banner").hover(function() { clearInterval(t); }, function() { t = setInterval(move, 2000); }) /*向左按钮*/ $(".banner .btn_l").click(function() { i--; move(); }) /*向右按钮*/ $(".banner .btn_r").click(function() { i++; move(); }) /*封装函数*/ function move() { if(i == size) { $(".banner .img").css({ left: 0 }); i = 1; } if(i == -1) { $(".banner .img").css({ left: -(size - 1) * 1000 }); i = size - 2; } $(".banner .img").stop().animate({ left: -i * 1000 }, 500); if(i == size - 1) { $(".banner .num li").eq(0).addClass('on').siblings().removeClass('on'); } else { $(".banner .num li").eq(i).addClass('on').siblings().removeClass('on'); } } }) </script>
我们来看看效果(静态):
总结:以上就是jQuery实现无缝轮播图效果的全部代码,大家可以自己动手尝试编译,看看效果,加深理解,制作属于自己的轮播图。希望能对大家的学习有所帮助,更多相关教程请访问JavaScript视频教程,jQuery视频教程,bootstrap教程!
以上是jq如何達到無縫輪播圖效果(自動輪播)? (程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver Mac版
視覺化網頁開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

記事本++7.3.1
好用且免費的程式碼編輯器