JQuery实现图片轮播效果

发布时间 - 2026-01-11 01:01:21    点击率:

用JQuery操作DOM确实很方便,并且JQuery提供了非常人性化的API应付我们的各种需求,大大简化了js的代码。

制作原理:

这里大概说一下整个流程:

1,将除了第一张以外的图片全部隐藏,

2,获取第一张图片的alt信息显示在信息栏,并添加点击事件

3,为4个按钮添加点击侦听,点击相应的按钮,用fadeOut,fadeIn方法显示图片

4,设置setInterval,定时执行切换函数

代码说明:

filter(":visible") :获取所有可见的元素

unbind():从匹配的元素中删除绑定的事件

siblings:取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合

程序源码

HTML部分:

<body>
<div id="banner"> 
 <div id="banner_bg"></div>
 <div id="banner_info"></div>
 <ul>
  <li class="on">1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
 </ul>
 <div id="banner_list">
  <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" target="_blank"><img src="imgs/img_1.jpg" title="图片" alt="图片"/></a>
  <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" target="_blank"><img src="imgs/img_2.jpg" title="图片" alt="图片"/></a>
  <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" target="_blank"><img src="imgs/img_3.jpg" title="图片" alt="图片"/></a>
  <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" target="_blank"><img src="imgs/img_4.jpg" title="图片" alt="图片"/></a>
 </div>
</div>
</body>

CSS部分:

<style type="text/css">
#banner {position:relative; width:478px; height:286px; border:1px solid #666; overflow:hidden;}
#banner_list img {border:0px;}
#banner_bg {position:absolute; bottom:0;background-color:#000;height:30px;filter: Alpha(Opacity=30);opacity:0.3;z-index:1000;
cursor:pointer; width:478px;}
#banner_info{position:absolute; bottom:0; left:5px;height:22px;color:#fff;z-index:1001;cursor:pointer}
#banner_text {position:absolute;width:120px;z-index:1002; right:3px; bottom:3px;}
#banner ul {position:absolute;list-style-type:none;filter: Alpha(Opacity=80);opacity:0.8; border:1px solid #fff;z-index:1002;
   margin:0; padding:0; bottom:3px; right:5px;}
#banner ul li { padding:0px 8px;float:left;display:block;color:#FFF;border:#e5eaff 1px solid;background:#6f4f67;cursor:pointer}
#banner ul li.on { background:#900}
#banner_list a{position:absolute;}
</style>

javascript代码:

<script type="text/javascript">
 var t = n =0, count;
 $(document).ready(function(){ 
  count=$("#banner_list a").length;
  $("#banner_list a:not(:first-child)").hide();
  $("#banner_info").html($("#banner_list a:first-child").find("img").attr('alt'));
  $("#banner_info").click(function(){window.open($("#banner_list a:first-child").attr('href'), "_blank")});
  $("#banner li").click(function() {
   var i = $(this).text() -1;//获取Li元素内的值,即1,2,3,4
   n = i;
   if (i >= count) return;
   $("#banner_info").html($("#banner_list a").eq(i).find("img").attr('alt'));
   $("#banner_info").unbind().click(function(){window.open($("#banner_list a").eq(i).attr('href'), "_blank")})
   $("#banner_list a").filter(":visible").fadeOut(500).parent().children().eq(i).fadeIn(1000);
   document.getElementById("banner").style.background="";
   $(this).toggleClass("on");
   $(this).siblings().removeAttr("class");
  });
  t = setInterval("showAuto()", 4000);
  $("#banner").hover(function(){clearInterval(t)}, function(){t = setInterval("showAuto()", 4000);});
 })
 
 function showAuto()
 {
  n = n >=(count -1) ?0 : ++n;
  $("#banner li").eq(n).trigger('click');
 }
</script>

源码下载

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# jquery  # 图片轮播  # 12款经典的白富美型—jquery图片轮播插件—前端开发必备  # 原生js和jquery实现图片轮播特效  # jQuery图片轮播的具体实现  # 基于JQuery的实现图片轮播效果(焦点图)  # Jquery代码实现图片轮播效果(一)  # 原生js和jquery实现图片轮播淡入淡出效果  # 基于jquery的图片轮播 tab切换组件  # jQuery插件slicebox实现3D动画图片轮播切换特效  # jQuery手动点击实现图片轮播特效  # jQuery左右滚动支持图片放大缩略图图片轮播代码分享  # 第一张  # 很方便  # 绑定  # 源码下载  # 简化了  # imgs  # src  # img  # jpg  # title  # href  # rel  # li  # banner_list  # target  # _blank  # external  # nofollow  # px  # width 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  如何解决hover在ie6中的兼容性问题  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  如何在万网主机上快速搭建网站?  ,怎么在广州志愿者网站注册?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  网站制作壁纸教程视频,电脑壁纸网站?  *服务器网站为何频现安全漏洞?  微信小程序 HTTPS报错整理常见问题及解决方案  Laravel如何处理和验证JSON类型的数据库字段  如何在建站主机中优化服务器配置?  如何用虚拟主机快速搭建网站?详细步骤解析  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  如何在企业微信快速生成手机电脑官网?  再谈Python中的字符串与字符编码(推荐)  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  EditPlus中的正则表达式实战(5)  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  如何撰写建站申请书?关键要点有哪些?  Android仿QQ列表左滑删除操作  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  如何用狗爹虚拟主机快速搭建网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  深入理解Android中的xmlns:tools属性  如何快速登录WAP自助建站平台?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  如何在建站之星绑定自定义域名?  如何制作一个表白网站视频,关于勇敢表白的小标题?  JavaScript Ajax实现异步通信  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  如何快速生成ASP一键建站模板并优化安全性?  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  Linux系统运维自动化项目教程_Ansible批量管理实战  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  北京的网站制作公司有哪些,哪个视频网站最好?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  Android okhttputils现在进度显示实例代码  公司网站制作价格怎么算,公司办个官网需要多少钱?  Laravel如何实现模型的全局作用域?(Global Scope示例)  Linux系统命令中tree命令详解  Android实现代码画虚线边框背景效果  详解Huffman编码算法之Java实现