jquery 插件 轻量级jquery焦点图 幻灯片效果 jquery.slider
2011-08-01 10:19
666 查看
ie真的让程序员爱不起,ie9又让我管理的站酷车中国焦点图悲剧了。就从网上找对搜索引擎友好,界面类似的焦点图。无耐网上的焦点图界面功能都很复杂,不符合的我的要求。只有自己动手了。
原理并不复杂,运用定时器setInterval定时执行,轮换显示内容罢了。jquery 又给我们定义好了淡入淡出动画效果,就下手吧
下面是全部代码
html页面代码
调用方法
简单参数调用方法
使用建议:
1. HTML代码一定要按照给出的格式,外边框要定义宽高和使用样式overflow:hidden以免破坏我们的页面效果
2. 不带参数调用默认是宽300px; 高250px; 文本高25px;
预览效果
// jQuery.fn.slider = function(settings) { settings = jQuery.extend({ width: 300, height: 250, txtHeight: 25 }, settings); var css = { dl: { height: settings.height - settings.txtHeight, width: settings.width, padding: 0, margin: 0, position: "relative", overflow: "hidden" }, dd: { position: "absolute", width: "100%", "list-style": "none", top: "0px", left: "0px", padding: 0, margin: 0, overflow: "hidden" }, dt: { position: "absolute", width: "100%", "list-style": "none", right: "0px", bottom: "0px", padding: 0, margin: 0, overflow: "hidden" }, span: { "text-align": "center", "border-left": "#ffffff 1px solid", width: "24px", display: "block", font: "10px Arial, Helvetica, sans-serif", background: " #000000", "float": "right", height: "100%", color: "#ffffff", cursor: "pointer" }, cur: { background: "#ce0609", color: "#ffffff", filter: "Alpha(opacity=100)", opacity: "1.0" }, normal: { filter: "Alpha(opacity=50)", background: "#000000", color: "#ffffff", opacity: "0.5" }, a: { width: "100%", display: "block", height: "100%", color: "#ffffff" }, div: { "text-align": "center", width: settings.width, height: settings.txtHeight, "vertical-align": "middle", "line-height": settings.txtHeight + "px", overflow: "hidden"} }; var s = this; var fs = 1; var pics = s.children("dl").find("dd"); s.children("dl").css(css.dl); pics.css(css.dd); var nav = s.children("dl").append("").find("dt"); nav.css(css.dt); var navSite = pics.size(); pics.eq(fs - 1).show().siblings("dd").hide(); if (settings.txtHeight > 0) { var sLink = s.append("").find("div"); sLink.css(css.div); setTxt(fs) } for (var i = navSite; i > 0; i--) { if (i == fs) { nav.append("" + i + "") } else { nav.append("" + i + "") } }; nav.children("span").css(css.span); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); nav.children("span").find("a").css(css.a); var myTime = setInterval(function() { fs++; if (fs > navSite) { fs = 1 } show(fs) }, 3000); function show(i) { pics.eq(i - 1).stop(true, true).fadeIn(300).siblings("dd").fadeOut(300); nav.children("span").eq(navSite - i).addClass("cur").removeClass("normal").siblings("span").removeClass("cur").addClass("normal"); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); if (settings.txtHeight > 0) { setTxt(i) } }; nav.children("span").mousedown(function() { fs = navSite - nav.find("span").index(this); show(fs); fs-- }); function setTxt(i) { var fsA = pics.eq(i - 1).find("a"); sLink.empty().append("" + fsA.attr("title") + "") } };
$(document).ready(function(){
// 在这里写你的代码...
$(".slider").slider({width:300,height:250,txtHeight:25});
});
// ]]>
代码打包下载
原理并不复杂,运用定时器setInterval定时执行,轮换显示内容罢了。jquery 又给我们定义好了淡入淡出动画效果,就下手吧
下面是全部代码
//轻量级jquery焦点图 //版权 酷车中国 www.kuchechina.com //作者 逐月 zhuyue.cnblogs.com //演示 http://www.kuchechina.com/ //调用方法 //$("slider").slider(); //$("slider").slider({width:300,height:250,txtHeight:25}); //调用参数 //width:300,--宽 默认宽度300 //height:250,--总高 默认高度 250 //txtHeight:25--文件链接高 默认高度25 jQuery.fn.slider = function(settings) { settings = jQuery.extend({ width: 300, height: 250, txtHeight: 25 }, settings); var css = { dl:{ height:settings.height-settings.txtHeight, width:settings.width, padding:0, margin:0, position:"relative", overflow:"hidden" }, dd:{ position:"absolute", width: "100%", "list-style":"none", top: "0px", left: "0px", padding:0, margin:0, overflow:"hidden" }, dt:{ position:"absolute", width: "100%", "list-style":"none", right: "0px", bottom: "0px", padding:0, margin:0, overflow:"hidden" }, span:{ "text-align": "center", "border-left": "#ffffff 1px solid", width: "24px", display: "block", font: "10px Arial, Helvetica, sans-serif", background:" #000000", "float": "right", height: "100%", color: "#ffffff", cursor: "pointer" }, cur:{ background: "#ce0609", color: "#ffffff", filter: "Alpha(opacity=100)", opacity: "1.0" }, normal:{ filter: "Alpha(opacity=50)", background: "#000000", color: "#ffffff", opacity: "0.5" }, a:{ width: "100%", display: "block", height: "100%", color: "#ffffff" }, div:{ "text-align": "center", width:settings.width, height:settings.txtHeight, "vertical-align":"middle", "line-height":settings.txtHeight+"px", overflow:"hidden" } }; var s = this; var fs = 1; var pics = s.children("dl").find("dd"); s.children("dl").css(css.dl); pics.css(css.dd); var nav =s.children("dl").append("<dt></dt>").find("dt"); nav.css(css.dt); var sLink =s.append("<div></div>").find("div"); var navSite = pics.size(); pics.eq(fs -1).show().siblings("dd").hide(); sLink.css(css.div); setTxt(fs); for(var i = navSite;i >0 ;i--){ if(i == fs){ nav.append("<span class='cur'><a>"+i+"</a></span>"); }else{ nav.append("<span class='normal'><a>"+i+"</a></span>"); } }; nav.children("span").css(css.span); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); nav.children("span").find("a").css(css.a); var myTime = setInterval(function(){ fs++; if(fs>navSite){fs=1;} show(fs); } , 3000); function show(i){ pics.eq(i - 1).stop(true,true).fadeIn(300).siblings("dd").fadeOut(300); nav.children("span").eq(navSite - i).addClass("cur").removeClass("normal").siblings("span").removeClass("cur").addClass("normal"); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); setTxt(i); }; nav.children("span").mousedown(function(){ fs =navSite - nav.find("span").index(this); show(fs); }); function setTxt(i){ var fsA = pics.eq(i - 1).find("a"); sLink.empty().append("<a href='"+fsA.attr("href")+"' title='"+fsA.attr("title")+"' target='_blank'>" + fsA.attr("title")+"</a>"); }; };
html页面代码
<div class="slider" style="width:300px; height:250px; overflow:hidden;"> <dl> <dd> <a title="高晓松醉驾判决生效 被判拘役6个月" href="http://www.kuchechina.com/ReNews.aspx?Newsid=18163" target="_blank"> <img alt="高晓松醉驾判决生效 被判拘役6个月" style="width: 300px; height: 250px;" src="http://www.kuchechina.com/userfiles/2011/6/129526902922500000272.jpg" /> </a> </dd> <dd> <a title="醉驾入刑,法律岂是橡皮筋 " href="http://www.kuchechina.com/ReNews.aspx?Newsid=18861" target="_blank"> <img alt="醉驾入刑,法律岂是橡皮筋 " style="width: 300px; height: 250px;" src="http://www.kuchechina.com/userfiles/2011/6/129526899054218750421.jpg" /> </a> </dd> <dd> <a title="华丽转身 全新一代迈腾合众汇金到店实拍" href="http://www.kuchechina.com/renews.aspx?Newsid=19913" target="_blank"> <img alt="华丽转身 全新一代迈腾合众汇金到店实拍" style="width: 300px; height: 250px;" src="http://www.kuchechina.com/ImgUpload/Flash_News/129555408097214118.jpg" /> </a> </dd> </dl> </div>
调用方法
$(document).ready(function(){ // 在这里写你的代码... $(".slider").slider(); });
简单参数调用方法
$(document).ready(function(){ // 在这里写你的代码... $(".slider").slider({width:300,height:250,txtHeight:25}); });
使用建议:
1. HTML代码一定要按照给出的格式,外边框要定义宽高和使用样式overflow:hidden以免破坏我们的页面效果
<div class="slider" style="width:XXpx;height:xxpx;overflow:hidden;"> <dl> <dd><a href="http://www.kuchechina.com/" title="酷车中国"><img src="" style="width:XXpx;height:xxpx;"/></a></dd> <dl> </div>
2. 不带参数调用默认是宽300px; 高250px; 文本高25px;
预览效果
// jQuery.fn.slider = function(settings) { settings = jQuery.extend({ width: 300, height: 250, txtHeight: 25 }, settings); var css = { dl: { height: settings.height - settings.txtHeight, width: settings.width, padding: 0, margin: 0, position: "relative", overflow: "hidden" }, dd: { position: "absolute", width: "100%", "list-style": "none", top: "0px", left: "0px", padding: 0, margin: 0, overflow: "hidden" }, dt: { position: "absolute", width: "100%", "list-style": "none", right: "0px", bottom: "0px", padding: 0, margin: 0, overflow: "hidden" }, span: { "text-align": "center", "border-left": "#ffffff 1px solid", width: "24px", display: "block", font: "10px Arial, Helvetica, sans-serif", background: " #000000", "float": "right", height: "100%", color: "#ffffff", cursor: "pointer" }, cur: { background: "#ce0609", color: "#ffffff", filter: "Alpha(opacity=100)", opacity: "1.0" }, normal: { filter: "Alpha(opacity=50)", background: "#000000", color: "#ffffff", opacity: "0.5" }, a: { width: "100%", display: "block", height: "100%", color: "#ffffff" }, div: { "text-align": "center", width: settings.width, height: settings.txtHeight, "vertical-align": "middle", "line-height": settings.txtHeight + "px", overflow: "hidden"} }; var s = this; var fs = 1; var pics = s.children("dl").find("dd"); s.children("dl").css(css.dl); pics.css(css.dd); var nav = s.children("dl").append("").find("dt"); nav.css(css.dt); var navSite = pics.size(); pics.eq(fs - 1).show().siblings("dd").hide(); if (settings.txtHeight > 0) { var sLink = s.append("").find("div"); sLink.css(css.div); setTxt(fs) } for (var i = navSite; i > 0; i--) { if (i == fs) { nav.append("" + i + "") } else { nav.append("" + i + "") } }; nav.children("span").css(css.span); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); nav.children("span").find("a").css(css.a); var myTime = setInterval(function() { fs++; if (fs > navSite) { fs = 1 } show(fs) }, 3000); function show(i) { pics.eq(i - 1).stop(true, true).fadeIn(300).siblings("dd").fadeOut(300); nav.children("span").eq(navSite - i).addClass("cur").removeClass("normal").siblings("span").removeClass("cur").addClass("normal"); nav.children("span.cur").css(css.cur); nav.children("span.normal").css(css.normal); if (settings.txtHeight > 0) { setTxt(i) } }; nav.children("span").mousedown(function() { fs = navSite - nav.find("span").index(this); show(fs); fs-- }); function setTxt(i) { var fsA = pics.eq(i - 1).find("a"); sLink.empty().append("" + fsA.attr("title") + "") } };
$(document).ready(function(){
// 在这里写你的代码...
$(".slider").slider({width:300,height:250,txtHeight:25});
});
// ]]>
代码打包下载
相关文章推荐
- jQuery配合coin-slider插件制作幻灯片效果的流程解析
- jQuery幻灯片skitter-slider插件学习总结
- jquery插件nivo-slider实现幻灯效果
- jQuery 插件 Touchslider触摸、鼠标操作幻灯片交互脚本
- jQuery响应式幻灯片插件jquery.glide.js(支持触摸&轻量级)
- jquery的网站幻灯片切换效果焦点图
- 使用jquery插件coin-slider轻松打造幻灯片教程
- JQuery幻灯片焦点图插件代码
- jquery图片幻灯片插件特效jquery.slider例子
- jQuery AnythingSlider滑动效果插件
- 【jQuery插件】slideImg-广告轮播,焦点图效果
- Jquery幻灯片焦点图插件
- 一个很好的幻灯片效果的jquery插件--kinMaxShow
- 30个精美的jQuery幻灯片效果插件和教程
- 介绍几款不错的轻量级jquery 幻灯片插件
- jQuery插件Skippr实现焦点图幻灯片特效
- 12个精美的jQuery幻灯片效果插件和教程
- 基于jquery插件实现常见的幻灯片效果
- 两个效果蛮好的javascript幻灯片(Jquery slider)
- 基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)