自适应图片宽度的jQuery焦点幻灯轮播代码
自适应图片宽度的jQuery焦点幻灯轮播代码
注意要1.7.2版本的jq才支持点击后显示点击的图片,不然就是一直顺序播放

- <div id="slide_box">
- <!-- 幻灯片图片 -->
- <ul class="slide_img">
- <li><a href=""><img src="1.jpg" width="800" height="450" alt=""></a></li>
- <li><a href=""><img src="2.jpg" width="735" height="450" alt=""></a></li>
- <li><a href=""><img src="3.jpg" width="371" height="450" alt=""></a></li>
- <li><a href=""><img src="4.jpg" width="700" height="450" alt=""></a></li>
- <li><a href=""><img src="5.jpg" width="650" height="450" alt=""></a></li>
- <li><a href=""><img src="6.jpg" width="670" height="450" alt=""></a></li>
- <li><a href=""><img src="7.jpg" width="575" height="450" alt=""></a></li>
- </ul>
- <!-- 幻灯片序列号 -->
- <div id="slide_order"></div>
- <div style="clear:both;"></div>
- </div>
- /**
- * JS文件
- */
- // 在Chrome测试时一直无法支持jQuery的 $(function(){}) 和 $(document).ready(),所以改用原生window.onload;
- window.onload = function (){
- /**
- * box 幻灯片外框(div)
- * uls 幻灯片图片外框(ul)
- * order 图片序列号外框(div)
- * lis 图片外框(li)
- * wdiths 图片集的总宽度
- * runtime 定时器自行时间(毫秒)
- * latency 定时器延迟时间(毫秒)
- * control 控制器,控制定时器的执行
- * num 当前li标签在兄弟集合中的位置
- * winW 浏览器可视区域宽度
- */
- var box = $('#slide_box'),uls = $('ul.slide_img'),order = $('#slide_order',box),lis = $('li',uls),widths = 0,runtime = 600,latency = 2000,control,num = 0,winW = $(window).width();
- // 计算li标签宽度总和与插入img序号
- for (var i = 0; i < lis.length; i++) {
- widths += lis.eq(i).width();
- order.append('<a href="javascript:vide(0)">'+(i+1)+'</a>');
- };
- // 设置ul的宽度等于所有li标签宽度的总和;
- uls.width(widths);
- // 设置box位置居中
- box.css({left : (winW - box.width())/2});
- // 给第一个序号'1'添加class
- order.find('a').removeClass('current').eq(num).addClass('current');
- //规定时间后执行函数
- control = setTimeout( slide, latency );
- // 幻灯片自动运行函数
- function slide () {
- // 初始化width
- var width = 0;
- num = num < lis.length - 1 ? (num + 1) : 0;
- // box旧的宽度
- var old_box_width = box.width();
- // box新的宽度
- var lis_now_width = lis.eq(num).width();
- // 改变box的宽度 = 当前图片的宽度 和 left值
- box.animate({width : lis_now_width,left : (winW - lis_now_width)/2},runtime);
- // 计算第一张图到当前图片的宽度总和
- for (var j = 0; j < num; j++) {
- width += lis.eq(j).width();
- };
- // 设置当前的序号添加class
- order.find('a').removeClass('current').eq(num).addClass('current');
- // 改变ul的left值
- uls.animate({left: 0 - width}, runtime, function () {
- control = setTimeout( slide, latency );
- });
- }
- // 点击图片序号函数
- $('a',order).live({
- click: function () {
- // 立即停止uls当前正在执行的动作
- uls.stop();
- //清除定时器
- clearTimeout(control);
- num = $(this).index() - 1;
- slide();
- }
- });
- };
原文地址:http://www.freejs.net/article_jiaodiantu_72.html
自适应图片宽度的jQuery焦点幻灯轮播代码的更多相关文章
- [Jquery]焦点图轮播效果
$(function(){ var $next=$(".right"); var $prev=$(".left"); var $list_nu ...
- jQuery制作焦点图(轮播图)
焦点图(轮播图) 案例 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...
- jQuery轻量级京东图片轮播代码等
http://sc.chinaz.com/jiaoben/jiaodiantu.html jQuery轻量级京东图片轮播代码 查看全图点击预览 顶(17)踩(4)报错评论(0)下载地址 更新时间: ...
- jquery图片轮播代码
自己写的轮播代码 来张样式效果图 先贴HTML样式 <body> <div id = "wrap"> <div id="lunbo-img& ...
- 基于jQuery可悬停控制图片轮播代码
基于jQuery可悬停控制图片轮播代码.这是一款可悬停切换全屏轮播jQuery幻灯片.效果图如下: 在线预览 源码下载 实现的代码: <!-- 轮播广告 --> <div id= ...
- 基于jQuery游戏网站焦点图轮播特效
基于jQuery的一款游戏网站焦点图轮播特效.这是一款带进度条定时切换,带缩略图切换的jQuery网站焦点图代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <cente ...
- 基于jQuery带进度条全屏图片轮播代码
基于jQuery带进度条全屏图片轮播代码.这是一款基于jQuery实现的oppo手机官网首页带进度条全屏图片轮播特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div ...
- JS、JQ实现焦点图轮播效果
JS实现焦点图轮播效果 效果图: 代码如下,复制即可使用: (不过里面的图片路径需要自己改成自己的图片路径,否则是没有图片显示的哦) <!DOCTYPE html> <html> ...
- jquery实现导航图轮播
版权声明:作者原创,转载请注明出处! 下面的几个栗子是使用jquery实现Banner轮播的效果,直接将代码贴出来,从最初级没有任何优化和封装的写法,一直到最后一个栗子,一步步进行了优化,加大程序的可 ...
随机推荐
- JavaScript DOM大纲
DOM 定义了访问和操作HTML文档的标准方法 访问(查找标签) ---- 直接查找 document.getElementById(“idname”) document.getElementsByT ...
- python list的应用
先看下面的操作 In [2]: lis = [(1,2),(3,4),(5,6)] In [3]: for a,b in lis: ...: if a == 1: ...: print (" ...
- 深入剖析cpp对象模型
C++对象模型可以概括为以下2部分: 1. 语言中直接支持面向对象程序设计的部分,主要涉及如构造函数.析构函数.虚函数.继承(单继承.多继承.虚继承).多态等等. 2. 对于各种支持的底层实现机制.在 ...
- DHTML和HTML有什么区别?有什么不同
DHTML和HTML有什么区别?有什么不同 首先Dynamic HTML是一种制作网页的方式,而不是一种网络技术(就像JavaScript和ActiveX):它也不是一个标记.一个插件或者是一个浏览器 ...
- Redis 服务器命令
1.BGREWRITEAOF 异步执行一个 AOF(AppendOnly File) 文件重写操作 2.BGSAVE 在后台异步保存当前数据库的数据到磁盘 3.CLIENT KILL [ip:port ...
- 线性表之顺序栈C++实现
线性表之顺序栈 栈是限定仅在表尾(栈顶)进行插入删除操作的线性表,FILO:先进后出 一.顺序栈的头文件:SeqStack.h //顺序栈头文件 #include<iostream> us ...
- BZOJ.4516.[SCOI2016]幸运数字(线性基 点分治)
题目链接 线性基可以\(O(log^2)\)暴力合并.又是树上路径问题,考虑点分治. 对于每个点i求解 LCA(u,v)==i 时的询问(u,v),只需求出这个点到其它点的线性基后,暴力合并. LCA ...
- 【洛谷】2602: [ZJOI2010]数字计数【数位DP】
P2602 [ZJOI2010]数字计数 题目描述 给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多少次. 输入输出格式 输入格式: 输入文件中仅包含一行两个整数a ...
- C++之lambda理解
简介 在C++ Primer中,是这样定义的-一个lambda表达式表示一个可调用的代码单元,可以将其理解为一个未命名的内联函数:与任何函数类似,一个lambda具有一个返回类型,一个参数列表和一个函 ...
- UIAutomator2.0初始
1. 先直接上样例,谷歌官方Demo: https://github.com/googlesamples/android-testing 2. 一句话说明改动思路 Most importantly, ...