jQuery实现的图片分组切换焦点图插件


Posted in Javascript onJanuary 06, 2015

这是一款基于jQuery的图片切换焦点图插件,这款jQuery焦点图插件的特点是图片可以分组切换,也就是说一次可以切换多张图片,相比其他焦点图插件,它能节省更多的空间,可以向用户展示更多的图片,非常实用。

jQuery实现的图片分组切换焦点图插件

实现的代码。

html代码:

 <div class="device">

        <h2>

            <a href="javascript:;" class="pre">上一组</a><a href="javascript:;" class="next">下一组</a></h2>

        <div class="scroll">

            <ul>

                <li><a href="#">

                    <img src="images/1.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/2.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/3.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/4.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/5.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/1.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/2.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/3.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/4.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/5.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/1.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/2.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/3.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/4.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/5.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/1.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/2.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/3.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/4.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

                <li><a href="#">

                    <img src="images/5.jpg" /></a><a href="#" class="link">HTML5资源教程</a></li>

            </ul>

        </div>

    </div>

js代码:

  $(function () {

            var $number = Math.ceil($('.scroll ul li').length / 4); //获取滚动几屏个数

            var margin = 10; //设置图片间距

            var $w = $('.scroll li').width() + margin; // 一屏图片的宽度

            var $width = $w * $number * 2; //设置ul宽度

            var pre = $('.device .pre');

            var next = $('.device .next');

            if ($number == 1) { pre.hide(); next.hide(); }

            $('.scroll ul').width($width);

            var num = 0;

            function autoscroll() {

                num++;

                if ($number == 1) { return false }

                if (num == $number) {

                    num = 0;

                }

                var distance = -2 * $w * num;

                $('.scroll ul').stop().animate({ left: distance });

            }

            var scrollChange = setInterval(autoscroll, 8000);

            //鼠标悬停,暂停滚动

            $(".scroll ul,.pre,.next").mouseover(function () {

                $('.scroll ul').stop()

                clearInterval(scrollChange);

            });

            // 鼠标移走,滚动继续

            $('.scroll ul,.pre,.next').mouseout(function () {

                scrollChange = setInterval(autoscroll, 8000);

            });

            //下一组

            next.click(function () {

                num++;

                if (num >= $number) { num = 0 }

                var leftdis = -2 * $w * num;

                $('.scroll ul').stop().animate({ left: leftdis });

            });

            //上一组

            pre.click(function () {

                num--;

                if (num < 0) { num = $number - 1 }

                var rightdis = -2 * $w * num;

                $('.scroll ul').stop().animate({ left: rightdis });

            });

        });
Javascript 相关文章推荐
javascript 面向对象,实现namespace,class,继承,重载
Oct 29 Javascript
基于JQuery的一个简单的鼠标跟随提示效果
Sep 23 Javascript
5个最佳的Javascript日期处理类库分享
Apr 15 Javascript
js操作checkbox遇到的问题解决
Jun 29 Javascript
jquery链式操作的正确使用方法
Jan 06 Javascript
JS实现固定在右下角可展开收缩DIV层的方法
Feb 13 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
Sep 14 Javascript
第九章之路径分页标签与徽章组件
Apr 25 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
Jul 15 Javascript
Vue cli3 库模式搭建组件库并发布到 npm的流程
Oct 12 Javascript
微信小程序登录态和检验注册过没的app.js写法
May 22 Javascript
JS实现查找数组中对象的属性值是否存在示例
May 24 Javascript
JavaScript静态类型检查工具FLOW简介
Jan 06 #Javascript
jQuery中filter()方法用法实例
Jan 06 #Javascript
JavaScript修改浏览器tab标题小技巧
Jan 06 #Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
Jan 06 #Javascript
jQuery中hasClass()方法用法实例
Jan 06 #Javascript
jQuery中last()方法用法实例
Jan 06 #Javascript
jQuery中first()方法用法实例
Jan 06 #Javascript
You might like
PHP 反射机制实现动态代理的代码
2008/10/22 PHP
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
jQuery EasyUI中对表格进行编辑的实现代码
2010/06/10 Javascript
js模仿html5 placeholder适应于不支持的浏览器
2013/01/13 Javascript
解决jquery中美元符号命名冲突问题
2014/01/08 Javascript
javascript实现英文首字母大写
2015/04/23 Javascript
JavaSacript中charCodeAt()方法的使用详解
2015/06/05 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
2015/12/03 Javascript
jQuery遍历json的方法分析
2016/04/16 Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
2016/05/09 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
JavaScript实现数组降维详解
2017/01/05 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
JavaScript实现选中文字提示新浪微博分享效果
2017/06/15 Javascript
vue登录路由验证的实现
2017/12/13 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
巧妙运用v-model实现父子组件传值的方法示例
2019/04/07 Javascript
浅谈vue3中effect与computed的亲密关系
2019/10/10 Javascript
[43:57]Liquid vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
Python交互环境下实现输入代码
2018/06/22 Python
widows下安装pycurl并利用pycurl请求https地址的方法
2018/10/15 Python
使用 Python 快速实现 HTTP 和 FTP 服务器的方法
2019/07/22 Python
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
美国高端牛仔品牌:Silver Jeans
2019/12/12 全球购物
普通PHP程序员笔试题
2016/01/01 面试题
医药代表个人的求职信分享
2013/12/08 职场文书
大学同学聚会邀请函
2014/01/29 职场文书
干部选拔任用方案
2014/05/26 职场文书
法人委托书
2014/07/31 职场文书
幽默自我介绍演讲稿
2014/08/21 职场文书
村级四风对照检查材料
2014/08/24 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
社区党的群众路线教育实践活动总结材料
2014/10/31 职场文书
python批量创建变量并赋值操作
2021/06/03 Python