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 相关文章推荐
一个判断email合法性的函数[非正则]
Dec 09 Javascript
jQuery源码分析-03构造jQuery对象-工具函数
Nov 14 Javascript
理解Javascript闭包
Nov 01 Javascript
javaScript语法总结
Nov 25 Javascript
Bootstrap导航条的使用和理解3
Dec 14 Javascript
详解javascript中对数据格式化的思考
Jan 23 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
May 18 Javascript
利用Javascript开发一个二维周视图日历
Dec 14 Javascript
vue使用axios时关于this的指向问题详解
Dec 22 Javascript
解决vue的过渡动画无法正常实现问题
Oct 31 Javascript
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
Mar 20 jQuery
vue@cli3项目模板怎么使用public目录下的静态文件
Jul 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写的带缓存数据功能的mysqli类
2012/09/06 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
2014/12/09 PHP
php判断一个数组是否为有序的方法
2015/03/27 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
2015/12/31 PHP
php代码架构的八点注意事项
2016/01/25 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
php实现socket推送技术的示例
2017/12/20 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
2018/08/16 PHP
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
2014/02/24 Javascript
jquery获取节点名称
2015/04/26 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
2020/09/13 Javascript
基于BootStrap环境写jQuery tabs插件
2016/07/12 Javascript
jstree创建无限分级树的方法【基于ajax动态创建子节点】
2016/10/25 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
Vue 项目代理设置的优化
2018/04/17 Javascript
如何以Angular的姿势打开Font-Awesome详解
2018/04/22 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
浅谈vue加载优化策略
2019/03/19 Javascript
如何在微信小程序中实现Mixins方案
2019/06/20 Javascript
[01:01:36]Optic vs paiN 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python操作mysql代码总结
2018/06/01 Python
解决Python print输出不换行没空格的问题
2018/11/14 Python
python批量修改文件夹及其子文件夹下的文件内容
2019/03/15 Python
使用pyqt 实现重复打开多个相同界面
2019/12/13 Python
TensorFlow MNIST手写数据集的实现方法
2020/02/05 Python
使用matplotlib动态刷新指定曲线实例
2020/04/23 Python
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
学生处主任岗位职责
2013/12/01 职场文书
求职信范文英文版
2014/01/05 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
收银员岗位职责范本
2015/04/07 职场文书
音乐会主持人开场白
2015/05/28 职场文书
css中有哪些方式可以隐藏页面元素及区别
2022/06/16 HTML / CSS