淡入淡出效果模板 js
html文件中:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jQuery Slide</title>
<link href="css/jquery-slide.css" rel="stylesheet" media="screen">
</head> <body>
<div class="slide-pic">
<ul class="slide-viewport">
<li style="z-index:2;">
<a href="javascript:void(0);">
<img src="data:images/sample1.jpg" width="600" height="300" alt="">
</a>
</li>
<li>
<a href="javascript:void(0);">
<img src="data:images/sample2.jpg" width="600" height="300" alt="">
</a>
</li>
<li>
<a href="javascript:void(0);">
<img src="data:images/sample3.jpg" width="600" height="300" alt="">
</a>
</li>
</ul>
</div>
<script src="js/jquery-1.6.2.min.js"></script>
<script src="js/jquery.slide.js"></script>
<script>
$(".slide-pic").slidePic({width:600,height:300,autoSlideTime:2000,controllerLeft:true});<!--此处只能是四个参数-->
</script>
</body> </html>
css样式:
.slide-pic ul,.slide-pic li,.slide-pic img{margin:;padding:;border:;vertical-align:top;}
.slide-pic{position:relative;overflow:hidden;}
.slide-pic .slide-viewport li{position:absolute;left:;top:;list-style:none;}
/* 底部控制器样式 */
.slide-pic .controller-bottom{left:50%;bottom:10px;position:absolute;z-index:;}
.slide-pic .controller-bottom li{background:url("../images/focus-img-button.png") no-repeat 0 0;cursor:pointer;height:9px;float:left;margin-right:10px;overflow:hidden;width:9px;
_background-image:url("../images/focus-img-button-png8.png");}
.slide-pic .controller-bottom li.current {background-position:0 -9px;}
/* 两侧控制器样式 */
.slide-pic .controller-side-left,.slide-pic .controller-side-right{
position:absolute;height:40px;width:20px;top:50%;margin-top:-20px;z-index:;background:rgba(0,0,0,0.3);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4c000000,endColorstr=#4c000000);zoom:;border-radius:0 20px 20px 0;cursor:pointer;
background-image:url("../images/slide-arrow.png");
background-position:3px 12px;
background-repeat:no-repeat;
_background-image:url("../images/slide-arrow-png8.png");
}
:root .slide-pic .controller-side-left,:root .slide-pic .controller-side-right{filter:none\9;}/*for IE9*/
.slide-pic .controller-side-left{left:;margin-left:-20px;}
.slide-pic .controller-side-right{right:;border-radius:20px 0 0 20px;background-position:-17px 12px;margin-right:-20px;}
js文件:
(function ($) {
var settings; $.fn.slidePic = function (callerSettings) {
settings = $.extend({//将下面的说有属性的值都合并到全局对象settings中,后面的settings可以调用;
width: 600,
height: 300,
controllerBottom: true,//控制底部的原点的控制按钮是否出现;
controllerLeft: true,//控制左右两侧的按钮是否出现;
autoSlideTime: 5000//图片切换的间隔时间;
}, callerSettings || {}); //初始化
var picsLength = this.find(".slide-viewport > li").length;//只需要将.slide-viewport改成自己代码中所设置的class即可;
picsLength = parseInt(picsLength);//找到html中存在的li的个数,并将其转换为整型;此处为3 this.css({
width: settings.width,
height: settings.height
}); if (settings.controllerBottom) {
createControllerBottom.call(this, picsLength);//调用创建底部按钮的代码;
}
if (settings.controllerLeft) {
createControllerLeft.call(this);//调用两侧按钮出现的代码;
} var controllerBottomHandler = $(".controller-bottom").find("li");//底部按钮中的li元素;
var controllerSideHandler = $(".controller-side-left,.controller-side-right");//选择两侧的按钮;
var controllerSideLeftHandler = $(".controller-side-left");//单独选取左侧的按钮;
var controllerSideRightHandler = $(".controller-side-right");//单独选取右侧的按钮;
var slidePicHandler = this.find("li");//找到左右的li元素;
var preIndex = 0;
var timer = null;
controllerBottomHandler.mouseover(function() {
var index = $(this).index();//获得当前鼠标放在底部按钮上是第几个按钮;
showNext(index);
}); this.mouseover(function(){//控制两侧的按钮,如果要求显示时,则出现在区域的两侧;
clearTimeout(timer);
controllerSideLeftHandler.stop().animate({marginLeft:0},"normal");
controllerSideRightHandler.stop().animate({marginRight:0},"normal");
}).mouseleave(function() {
timer = setTimeout(function() {
var index = controllerBottomHandler.filter(".current").index();
index = (index + 1) % picsLength;
showNext(index);
timer = setTimeout(arguments.callee,settings.autoSlideTime);
}, settings.autoSlideTime);
//鼠标移开时,两侧按钮不显示;
controllerSideLeftHandler.stop().animate({marginLeft:"-20px"},"normal");
controllerSideRightHandler.stop().animate({marginRight:"-20px"},"normal");
}).mouseleave(); //当点击两侧的按钮时,控制图片以淡入淡出的效果实现;
controllerSideHandler.click(function(){
var index = controllerBottomHandler.filter(".current").index();//获取当前显示为红色的li元素是第几个,从0开始计数;
if($(this).hasClass("controller-side-left")){//如果当前点击的是左侧的按钮;
index = (index - 1) % picsLength;//
if(index < 0){
index = picsLength + index;
}
}
if($(this).hasClass("controller-side-right")){//如果当前点击的是右侧的按钮;
index = (index + 1) % picsLength;
}
showNext(index);
}); //根据底部的红色切换,显示下一个图片;
function showNext(index) {
controllerBottomHandler.removeClass("current").eq(index).addClass("current");//使放上去的这个按钮的颜色变为红色;
slidePicHandler.css("zIndex", "").eq(preIndex).css("zIndex", 1).end().eq(index).css({//连续设置几个li的样式;
"zIndex": 2,
"opacity": 0
}).stop().animate({//表示前面的li样式设置好后,就停止,然后开始逐渐使图片的透明度变为1(完全显示);
"opacity": 1
}, "normal");
preIndex = index;
} return this;
} //创建底部按钮的代码;
var createControllerBottom = function (picsLength) {
var controllerWidth = picsLength * 19; //19为底部控制器圆点的宽度outerWidth
var controllerBottomHtml = "";
for (var i = 0; i < picsLength; i++) {
controllerBottomHtml += "<li></li>"
}
controllerBottomHtml = "<ul class='controller-bottom'>" + controllerBottomHtml + "</ul>";
this.append(controllerBottomHtml);//创建了底部按钮显示的代码;
this.find(".controller-bottom").css({//设置底部按钮的样式,使得默认情况下第一个按钮的眼的为红色;
width: controllerWidth,
marginLeft: -(controllerWidth / 2)
}).find("li:first").addClass("current")
}; var createControllerLeft = function () {//创建幻灯片两侧的按钮;
var controllerLeftHtml = '<span class="controller-side-left"></span><span class="controller-side-right"></span>';
this.append(controllerLeftHtml); };
})(jQuery);
注意点:images文件夹 和 css文件夹以及 js文件夹实在同一级目录中,而且导入的js库文件版本不要太高,有时会出错,该模板用的jquery文件为:jquery-1.6.2.min.js
淡入淡出效果模板 js的更多相关文章
- 淡入淡出效果的js原生实现
淡入淡出效果,在日常项目中经常用到,可惜原生JS没有类似的方法,而有时小的页面并不值得引入一个jQuery库,所以就自己写了一个,已封装, 有用得着的朋友, 可以直接使用. 代码中另附有一个设置元素透 ...
- 原生JS实现淡入淡出效果(fadeIn/fadeOut/fadeTo)
淡入淡出效果,在日常项目中经常用到,可惜原生JS没有类似的方法,而有时小的页面并不值得引入一个jQuery库,所以就自己写了一个,已封装, 有用得着的朋友, 可以直接使用. 代码中另附有一个设置元素透 ...
- Jquery小例子:全选按钮、加事件、挂事件;parent()语法;slideToggle()语法;animate()语法;元素的淡入淡出效果:fadeIn() 、fadeOut()、fadeToggle() 、fadeTo();function(e):e包括事件源和时间数据;append() 方法
function(e): 事件包括事件源和事件数据,事件源是指是谁触发的这个事件,谁就是事件源(div,按钮,span都可以是事件源),时间数据是指比如点击鼠标的事件中,事件数据就是指点击鼠标的左建或 ...
- 基于jquery实现的文字淡入淡出效果
这篇文章介绍了jquery实现的文字淡入淡出效果实例,有需要的朋友可以参考一下 复制代码代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- 实现Bootstrap Carousel Fade Transition 淡入淡出效果
html代码: <div id="carousel" class="carousel slide carousel-fade" data-ride=&qu ...
- javascript 单个图片的淡入淡出效果和多张图片的淡入淡出效果
最近刚好在看之前妙趣网站的javascript 初级运动教程,教程里说设置图片的透明度使用了一个变量.这种方法确实不错,但是燕姐喜欢麻烦.就用自己的理解方法写了一遍.其中也是各种坑.现在先把一个图片的 ...
- 【jQuery】使用JQ来编写面板的淡入淡出效果
本文与上一篇的<[jQuery]使用JQ来编写最主要的淡入淡出效果>(点击打开链接)为姊妹篇. 但上一篇仅仅是对文本的基本控制,本篇则是对面板元素进行控制. 尽管功能上很类似,可是所用到的 ...
- JQuery显示,隐藏和淡入淡出效果
为了把JQuery搞熟悉,看着菜鸟教程,一个一个例子打,边看边记,算是一晚上的一个小总结吧.加油,我很本但是我很勤奋啊.系统的了解它,就要花时间咯. <!DOCTYPE html> < ...
- jQuery-4.动画篇---淡入淡出效果
jQuery中淡出动画fadeOut 让元素在页面不可见,常用的办法就是通过设置样式的display:none.除此之外还可以一些类似的办法可以达到这个目的.这里要提一个透明度的方法,设置元素透明度为 ...
随机推荐
- 【二分图】【最大匹配】【匈牙利算法】bzoj1191 [HNOI2006]超级英雄Hero
裸的最大匹配. #include<cstdio> #include<vector> #include<cstring> using namespace std; v ...
- 【AC自动机+DP】USACO2012 JAN GOLD_Video Game Combos
[题目大意] 给你个模式串(每个长度≤15,1≤N≤20),串中只含有三种字母.求一长度为K(1≤K≤1000)的字符串,使得匹配数最大(重复匹配计多次),输出最大值. [解题思路] W老师给的题,然 ...
- Atom | 报错 Cannot load the system dictionary for zh-CN的解决办法
文章目录 问题描述 推荐阅读 查找问题所在 解决方案 (二选一) 问题描述 最近这款优秀的编辑器 atom,报错 Cannot load the system dictionary for zh-CN ...
- Java下List使用subList实现分页获取
java.util.List中有一个subList方法,用来返回一个List的一部分的视图. List<E> subList(int fromIndex, int toIndex); 它返 ...
- vscode 使用笔记
https://code.visualstudio.com/docs/setup/setup-overview#_proxy-server-support 如果使用代理上网时,需要配置: 在 se ...
- Java几种常见的四舍五入的方法
/* * 在上面简单地介绍了银行家舍入法,目前java支持7中舍入法: 1. ROUND_UP:远离零方向舍入.向绝对值最大的方向舍入,只要舍弃位非0即进位. 2. ROUND_DOWN:趋向零方向舍 ...
- python3读取html文件
# htmlf=open('E:\\test2.html','r',encoding="utf-8") # htmlcont=htmlf.read() # print(type(h ...
- iOS:Objective-c的MD5/SHA1加密算法的实现
介绍: Objective-c实现MD5和SHA1算法相对还是比较简单的,可以直接调用系统的C/C++共享库来实现调用MD5即Message Digest Algorithm 5(信息-摘要算法 5) ...
- pycharm2016序列号失效问题解决办法
1.首先修改配置文件 Linux在/etc/hosts windows的话没记错应该在C:\Windows\System32\drivers\etc\hosts 使用时需要将“0.0.0.0 acco ...
- Eclipse重新导入Tomcat启动出错选择不了文件夹
如果你已经把tomcat配置进了Eclipse,却因为某些原因delete了服务器,再想导入同版本的服务器就有可能会报Could not publish to the server.错误,并且添加服务 ...