Jquery焦点图实例代码


Posted in Javascript onNovember 25, 2014

本文实例讲述了Jquery焦点图实例代码。分享给大家供大家参考。具体如下:

对于很多建站的朋友来讲,焦点图并不陌生,一般的企业站,门户站都会用到焦点图。我们平时在写html代码的时候,很多人为了省时省力,对于焦点图都是在网上下载一些人家写好的代码,直接套上去即可,很多时候我自己也是这样来的。因为一个焦点图有html布局,css样式调试和最关键的 javascript语句的编写。这些都是一个很麻烦的过程。

今天我就以实例讲解,手把手教你如何写Jquery焦点图。Jquery是js封装的框架,让js的语法变得简单,很多知名网站都在用这个框架。这里星仔为了语法的简单,让大部分网友能看懂,也引用Jquery框架。

长话短说,我直接贴出源代码,和对应的注释。具体代码如下:

<!DOCTYPE html>

<html>

<head>

<title>focus code powered by boyxing.com</title>

<script type="text/javascript" src="js/jquery.js"></script><!--引用Jquery框架-->

<!--css定义,可以根据需要自己定义-->

<style type="text/css">

body,ul,li{ margin:0; padding:0}

ul,li{ list-style:none;}

.focus{ margin:0 auto; height:320px; width:980px; overflow:hidden; position:relative; padding:0;}

.focus .bigpic{ position:absolute;padding:0;}

.focus .bigpic li{ width:980px;float:left;padding:0;}

.focus .btn{ overflow:hidden; height:30px;position:absolute; bottom:3px; left:50%; margin-left:-100px;}

.focus .btn li{ float:left; margin:0 10px; padding:5px; cursor:pointer; background: #fff;border:1px #900 solid;border-radius:12px; height:12px; width:12px; overflow:hidden; text-align:center; line-height:12px;opacity:0.6; float:left;}

.focus .btn li.on{ background: #990000; color:#FFFFFF;}

</style>

</head>

<body>

 

<!--焦点图div部分开始-->

<div class="focus">

  <div class="focuscon">

    <ul class="bigpic">

      <li><a href="#"><img src="fbc60c3991284b6ffdb0aa11a1708c41.jpg" border="0"></a></li>

      <li><a href="#"><img src="3d41450340fe053008f8437011b7bcf5.jpg" border="0"></a></li>

      <li><a href="#"><img src="c9a787ef199d47bdb3529bbdecfc989c.jpg" border="0"></a></li>

      <li><a href="#"><img src="2471eddde718c56879171814c8a52153.jpg" border="0"></a></li><!--焦点图个数不限-->

    </ul>

  </div>

</div>

<!--焦点图div部分结束-->

 

</body>

<script type="text/javascript">

$(document).ready(function(){

 

var num=$(".bigpic li").length;//获取焦点图的个数

var fwidth=$(".bigpic li").width();//获取每个焦点图的宽度

var sec=4000;//时间切换间隔

 

var btn = '<ul class="btn"><li class="on">1</li>';

var btnend = '</ul>';

for(i=2;i<=num;i++){btn += '<li>'+i+'</li>';};

btn += btnend;

if(num == 1){btn = null};

$(".focus").append(btn);//自动根据焦点图个数,添加切换按钮,如果只有一张图片则不显示切换按钮。

 

$(".bigpic").css("width",fwidth*num);//设定大图集合的宽度,也就是所有焦点图宽度的和。

 

$(".btn li").bind("mouseover",function(){

  $(this).addClass("on").siblings().removeClass("on");

  var i=$(".btn li").index(this);var marginL=fwidth*i;

  $(".bigpic").animate({"left":-marginL},500);}

);//鼠标指向按钮,焦点图切换到对应位置,按钮样式改变。mouseover是鼠标经过时,这里也可以改成click,通过点击切换焦点图。

 

picTimer = setInterval(timeset,sec); //指定sec毫秒后执行一次timeset函数。

function timeset(){

  var j = $(".btn li").index($(".on"));//取得 当前焦点图的位置,即class为on的序号。

  var timew = fwidth*(j+1);

  if(j == num-1){$(".btn li").eq(0).addClass("on").siblings().removeClass("on");$(".bigpic").animate({"left":0},500);}

            else{$(".btn li").eq(j+1).addClass("on").siblings().removeClass("on");$(".bigpic").animate({"left":-timew},500);};

                  };

 

$(".focus").mouseover(function(){clearInterval(picTimer);});

$(".focus").bind("mouseout",function(){picTimer = setInterval(timeset,sec);}

);//当鼠标指向焦点图或者是切换按钮时,定时器清除,即不在执行自动切换,鼠标离开则恢复自动切换。

 

})

</script>

</html>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
Aug 04 Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
Nov 14 Javascript
JavaScript设计模式之外观模式实例
Oct 10 Javascript
DOM基础教程之使用DOM
Jan 19 Javascript
基于jquery实现省市联动特效
Dec 17 Javascript
Ionic快速安装教程
Jun 03 Javascript
Vue.js展示AJAX数据简单示例讲解
Mar 29 Javascript
Node做中转服务器转发接口
Oct 18 Javascript
使用JQuery自动完成插件Auto Complete详解
Jun 18 jQuery
Vue-Cli 3.0 中配置高德地图的两种方式
Jun 19 Javascript
微信小程序点击生成朋友圈分享图(遇到的坑)
Jun 17 Javascript
JavaScript组合继承详解
Nov 07 Javascript
jQuery事件绑定和委托实例
Nov 25 #Javascript
2014最热门的JavaScript代码高亮插件推荐
Nov 25 #Javascript
JS跨域问题详解
Nov 25 #Javascript
javascript 中__proto__和prototype详解
Nov 25 #Javascript
js 加密压缩出现bug解决方案
Nov 25 #Javascript
js Object2String方便查看js对象内容
Nov 24 #Javascript
js的[defer]和[async]属性
Nov 24 #Javascript
You might like
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
给ECShop添加最新评论
2015/01/07 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
2015/04/15 PHP
php实现统计网站在线人数的方法
2015/05/12 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
Yii核心验证器api详解
2016/11/23 PHP
php文件上传 你真的掌握了吗
2016/11/28 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
解析arp病毒背后利用的Javascript技术附解密方法
2007/08/06 Javascript
jQuery选中select控件 无法设置selected的解决方法
2010/09/01 Javascript
从数据结构分析看:用for each...in 比 for...in 要快些
2013/04/17 Javascript
jQuery 关于伪类选择符的使用说明
2013/04/24 Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
2014/03/27 Javascript
javascript bom是什么及bom和dom的区别
2015/11/26 Javascript
用nodejs的实现原理和搭建服务器(动态)
2016/08/10 NodeJs
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
jQuery插件FusionCharts绘制的3D双柱状图效果示例【附demo源码】
2017/04/20 jQuery
AngularJS实现动态切换样式的方法分析
2018/06/26 Javascript
Angular4 组件通讯方法大全(推荐)
2018/07/12 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
2019/09/23 Javascript
[03:54]Ehome出征西雅图 回顾2016国际邀请赛晋级之路
2016/08/02 DOTA
python实现的简单窗口倒计时界面实例
2015/05/05 Python
Python基于有道实现英汉字典功能
2015/07/25 Python
python通过加号运算符操作列表的方法
2015/07/28 Python
深入理解python多进程编程
2016/06/12 Python
python判断字符串是否是json格式方法分享
2017/11/07 Python
python实现雨滴下落到地面效果
2018/06/21 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
TensorFlow的reshape操作 tf.reshape的实现
2020/04/19 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
纯css3使用vw和vh实现自适应的方法
2018/02/09 HTML / CSS
埃弗顿足球俱乐部官方网上商店:Everton Direct
2018/01/13 全球购物
英国鞋网:Rubber Sole
2020/03/03 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
征用土地赔偿协议书
2014/09/26 职场文书