本文实例为大家分享了jquery版本轮播图及extend扩展的具体代码,供大家参考,具体内容如下

具体代码如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
*{
margin:0;
padding:0;
font-size:14px;
-webkit-user-select:none;
}
ul,li{
list-style:none;
}
img{
display:block;
border:none;
}
a{
text-decoration: none;
}
.banner{
position:relative;
margin:10px auto;
width:1000px;
height:300px;
overflow:hidden;
}
.bannerInner{
width:100%;
height:100%;
background:url("../img/default.gif") no-repeat center center;
}
.bannerInner div{
position:absolute;
top:0;
left:0;
z-index:0;
width:100%;
height:100%;
opacity: 0;
filter:alpha(opacity=0);
}
.bannerInner div img{
display:none;
width:100%;
height:100%;
}
.banner .bannerTip{
position:absolute;
right:20px;
bottom:20px;
z-index:10;
overflow:hidden;
}
.banner .bannerTip li{
float:left;
margin-left:10px;
width:18px;
height:18px;
background:lightblue;
border-radius:50%;
cursor:pointer;
}
.banner .bannerTip li.bg{
background:orange;
}
.banner a{
display:none;
position:absolute;
top:50%;
margin-top:-22.5px;
z-index:10;
width:30px;
height:45px;
opacity: 0.5;
filter:alpha(opacity=50);
background-image:url('../img/pre.png');
}
.banner a.bannerLeft{
left:20px;
background-position:0 0;
}
.banner a.bannerRight{
right:20px;
background-position:-50px 0;
}
.banner a:hover{
opacity: 1;
filter:alpha(opacity=100);
}
</style>
</head>
<body>
<div class='banner' id='bannerFir'>
<div class='bannerInner'>
<div><img src="" alt="" trueImg='img/banner1.jpg'></div>
<div><img src="" alt="" trueImg='img/banner2.jpg'></div>
<div><img src="" alt="" trueImg='img/banner3.jpg'></div>
<div><img src="" alt="" trueImg='img/banner4.jpg'></div>
</div>
<ul class='bannerTip'>
<li class='bg'></li>
<li></li>
<li></li>
<li></li>
</ul>
<a href="javascript:;" rel="external nofollow" rel="external nofollow" class='bannerLeft'></a>
<a href="javascript:;" rel="external nofollow" rel="external nofollow" class='bannerRight'></a>
</div>
<script>
jQuery.fn.extend({
banner:myBanner
})
//通过jQuery选择器或者筛选的方法获取到的jQuery集合是不存在dom映射机制的,之前获取到的dom集合,之后再页面中HTML结构改变了,集合中的内容不会跟着自动发生变化(JS获取的元素集合有DOM映射的机制)
function myBanner(selector,ajaxURL,interval){
var $banner = $("#"+selector);
var $bannerInner = $banner.children(".bannerInner"),$divList = null,$imgList = null;
var $bannerTip = $banner.children(".bannerTip"),$oLis = null
var $bannerLeft = $banner.children(".bannerLeft"),$bannerRight = $banner.children(".bannerRight")
//1、Ajax读取数据
var jsonData = null;
$.ajax({
url:ajaxURL+"?_="+Math.random(),
type:'get',
dataType::"json",
async:false,//当前的请求是同步的
success:function(data){
jsonData = data;
}
})
//2、实现数据的绑定
function bindData(){
var str = "",str2 = "";
if(jsonData){
//原生的jsonData使用$.each()
$.each(jsonData,function(index,item){
str+='<div><img src="" alt="" trueImg="'+item["img"]+'"></div>';
index===0?str2+='<li class="bg"></li>':str2+='<li></li>'
})
$bannerInner.html(str);
$bannerTip.html(str2);
$divList = $bannerInner.children("div")
$imgList = $bannerInner.find('img')
$oLis = $bannerTip.children("li")
}
}
//3、实现图片的延迟加载
window.setTimeout(lazyImg,500);
function lazyImg(){
//jquery元素集合 直接写$imgList.each()
$imgList.each(function(index,item){
var _this = this;
var oImg = new Image;
oImg.src = $(this).attr("trueImg");//$(this)等价于$(item)
oImg.onload = function(){
$(_this).prop('src',this.src).css("display","block")//内置属性使用prop
}
})
$divList.eq(0).css("zIndex",1).animate({opacity:1},300);
}
//封装一个轮播图切换的效果
function changeBanner(){
var $curDiv = $divList.eq(step);
$curDiv.css("zIndex",1).siblings().css("zIndex",0);
$curDiv.animate({opacity:1},300,function(){
$(this).siblings().css("opacity",0)
})
$oLis.eq(step).addClass("bg").siblings().removeClass('bg')
}
//4、实现自动轮播
interval = interval || 3000;
var step = 0,autoTimer = null;
autoTimer = window.setInterval(autoMove,interval)
function autoMove(){
if(step === jsonData.length-1){
step = -1;
}
step++;
changeBanner();
}
//5、控制左右按钮的显示隐藏和自动轮播的开始和暂停
$banner.on('mouseover',function(){
window.clearInterval(autoTimer);
$bannerLeft.css("display","block")
$bannerRight.css("display","block")
}).on('mouseout',function(){
autoTimer = window.setInterval(autoMove,interval);
$bannerLeft.css("display","none")
$bannerRight.css("display","none")
})
//6、实现焦点切换
$oLis.on('click',function(){
step = $(this).index();
changeBanner();
})
//7、实现左右切换
$bannerRight.on('click',autoMove);
$bannerLeft.on('click',function(){
if(step===0){
step = jsonData.length;
}
step--;
changeBanner();
});
}
//外部使用
$().banner("bannerFir","json/banner.txt",1000)
</script>
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# jquery
# 轮播图
# jquery实现左右轮播图效果
# JQuery和html+css实现带小圆点和左右按钮的轮播图实例
# jQuery制作全屏宽度固定高度轮播图(实例讲解)
# jquery实现左右滑动式轮播图
# jQuery实现一个简单的轮播图
# jQuery按需加载轮播图(web前端性能优化)
# jquery实现轮播图效果
# 用jQuery实现优酷首页轮播图
# jQuery无缝轮播图代码
# jquery 实现轮播图详解及实例代码
# 原生Javascript和jQuery做轮播图简单例子
# jQuery实现简洁的轮播图效果实例
# jquery写出PC端轮播图实例
# 不存在
# 大家分享
# 绑定
# 具体内容
# 大家多多
# 加载
# 改变了
# 选择器
# gif
# default
# url
# repeat
# absolute
# top
# center
# div
# height
# width
# auto
# background
相关文章:
建站之星后台密码遗忘?如何快速找回?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何用AWS免费套餐快速搭建高效网站?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
表情包在线制作网站免费,表情包怎么弄?
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
利用JavaScript实现拖拽改变元素大小
济南专业网站制作公司,济南信息工程学校怎么样?
建站之星云端配置指南:模板选择与SEO优化一键生成
如何选购建站域名与空间?自助平台全解析
如何通过宝塔面板实现本地网站访问?
如何通过服务器快速搭建网站?完整步骤解析
如何快速完成中国万网建站详细流程?
做企业网站制作流程,企业网站制作基本流程有哪些?
如何选择PHP开源工具快速搭建网站?
建站主机解析:虚拟主机配置与服务器选择指南
Bpmn 2.0的XML文件怎么画流程图
临沂网站制作公司有哪些,临沂第四中学官网?
如何获取PHP WAP自助建站系统源码?
如何在云指建站中生成FTP站点?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
建站之星导航配置指南:自助建站与SEO优化全解析
黑客如何通过漏洞一步步攻陷网站服务器?
建站之星ASP如何实现CMS高效搭建与安全管理?
如何通过西部建站助手安装IIS服务器?
如何在七牛云存储上搭建网站并设置自定义域名?
MySQL查询结果复制到新表的方法(更新、插入)
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
如何通过智能用户系统一键生成高效建站方案?
建站之星CMS五站合一模板配置与SEO优化指南
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
建站主机功能解析:服务器选择与快速搭建指南
北京制作网站的公司,北京铁路集团官方网站?
建站之星官网登录失败?如何快速解决?
大学网站设计制作软件有哪些,如何将网站制作成自己app?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
制作网站的基本流程,设计网站的软件是什么?
建站之星安装提示数据库无法连接如何解决?
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
网站制作软件有哪些,制图软件有哪些?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
制作网站的模板软件,网站怎么建设?
如何通过建站之星自助学习解决操作问题?
建站VPS推荐:2025年高性能服务器配置指南
如何配置IIS站点权限与局域网访问?
C#怎么创建控制台应用 C# Console App项目创建方法
如何在VPS电脑上快速搭建网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。