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 相关文章推荐
chrome浏览器不支持onmouseleave事件的解决技巧
May 31 Javascript
jquery ajax 调用失败的原因示例介绍
Sep 27 Javascript
javascript列表框操作函数集合汇总
Nov 28 Javascript
JS小功能(setInterval实现图片效果显示时间)实例代码
Nov 28 Javascript
向JavaScript的数组中添加元素的方法小结
Oct 24 Javascript
在JavaScript中使用JSON数据
Feb 15 Javascript
jQuery改变form表单的action,并进行提交的实现代码
May 25 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
Oct 10 Javascript
Bootstrap缩略图与警告框学习使用
Feb 08 Javascript
js拖动滑块和点击水波纹效果实例代码
Oct 16 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
Sep 06 Javascript
原生js实现购物车
Sep 23 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生成自己的LOG文件
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(1)
2006/10/09 PHP
详解PHP中的状态模式编程
2015/08/11 PHP
javascript删除option选项的多种方法总结
2013/11/22 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
不定义JQuery插件 不要说会JQuery
2016/03/07 Javascript
js实现ctrl+v粘贴上传图片(兼容chrome、firefox、ie11)
2016/03/09 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
javascript验证内容为数字以及长度为10的简单实例
2016/08/20 Javascript
详解ECharts使用心得总结
2016/12/06 Javascript
jquery鼠标悬停导航下划线滑出效果
2017/09/29 jQuery
原生JS实现ajax与ajax的跨域请求实例
2017/12/01 Javascript
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
详解JavaScript事件循环机制
2018/09/07 Javascript
jQuery实现带进度条的轮播图
2020/09/13 jQuery
[02:31]DOTA2帕克 英雄基础教程
2013/11/26 DOTA
Python下的Mysql模块MySQLdb安装详解
2014/04/09 Python
Windows下实现Python2和Python3两个版共存的方法
2015/06/12 Python
Python发送form-data请求及拼接form-data内容的方法
2016/03/05 Python
pycharm运行和调试不显示结果的解决方法
2018/11/30 Python
在Python中使用Neo4j的方法
2019/03/14 Python
python lxml中etree的简单应用
2019/05/10 Python
如何使用python把ppt转换成pdf
2019/06/29 Python
Python实现发票自动校核微信机器人的方法
2020/05/22 Python
HTML5 canvas 瀑布流文字效果的示例代码
2018/01/31 HTML / CSS
专科毕业生自我鉴定
2013/12/01 职场文书
小孩百日宴答谢词
2014/01/15 职场文书
班主任工作经验材料
2014/02/02 职场文书
2014年销售部工作总结
2014/12/01 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
详细分析PHP7与PHP5区别
2021/06/26 PHP
每日六道java新手入门面试题,通往自由的道路
2021/06/30 Java/Android
mysql 乱码 字符集latin1转UTF8
2022/04/19 MySQL
解决Mysql中的innoDB幻读问题
2022/04/29 MySQL
Django框架中模型的用法
2022/06/10 Python