CSS+Js遮罩效果的TAB及焦点图片切换(推荐)

Js遮罩效果的TAB及图片切换

div, ul, ol, li, dl, dt, dd {
margin:0;
padding:0;
}
.imgFlash,.tab{margin:auto}
/*------焦点图片的css-------*/
.imgFlash {
height:230px;width:270px;
position:relative;
}
.imgFlash dl {
height:100%;
overflow:hidden;
position:absolute;
width:100%;
}
.imgFlash img {
height:100%;
position:absolute;
width:100%;
background-color: #FFFFFF;
background-repeat: no-repeat;
background-position: center center;
}
.imgFlash dt {
bottom:0;
font-size:12px;
height:24px;line-height:24px;
left:0;
position:absolute;
width:100%;
z-index:1;
}
.imgFlash dt span {
background-color:#000000;
height:100%;
opacity:0.4;filter:Alpha(Opacity=40);
position:absolute;
width:100%;
}
.imgFlash dt a {
color:#FFFFFF;
position:absolute;
text-decoration:none;
text-indent:5px;
z-index:1;
}
.imgFlash dt a:hover {
text-decoration:underline;
}
.imgFlash div {
bottom:8px;
cursor:pointer;
display:block;
position:absolute;
right:8px;
z-index:99999;
}
.imgFlash div em {
background-color:#000000;
border:1px solid #FFFFFF;
display:block;
float:right;
height:4px;
margin-right:3px;
filter:Alpha(Opacity=50);opacity:0.5;
overflow:hidden;
width:4px;
}
.imgFlash div em.d {/*激活的小方块的样式*/
background-color:#CC0000;
filter:Alpha(Opacity=80);
opacity:0.8;
}
/*-------------------------Tab的css----------------------------*/
.tab,.tab ul{list-style-type: none;}
.tab{
width:270px;
background-color:#FFFFFF;
height: 160px;
font-size: 12px;
position: relative;
border-top-width: 30px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: solid;
border-top-color: #0066FF;
border-right-color: #0066FF;
border-bottom-color: #0066FF;
border-left-color: #0066FF;
}
.tab ul {
position: absolute;
top: -30px;
}
.tab li{
float:left;
background-color:#A9CEEB;
background-repeat:no-repeat;
background-position:left top;
margin-top:5px;
margin-left: 5px;
}
.tab li.d {
background-color: #FFFFFF;
}
.tab li a{text-decoration:none;display:block;padding-right:8px;padding-left:8px;line-height:25px;color:#2B6FA2;}
.tab li.d a{color:#0C3E74;}
.tab li ul{
border-bottom-style:none;
position:absolute;
left:0px;
top:30px;
background-color: #FFFFFF;
padding-top: 10px;
width: 270px;
}
.tab li li{
float:none;
background-image:none;
margin:0px;
background-color: #FFFFFF;
}
.tab li li a{
background-image:none;
line-height:22px;
color: #000000;
float: none;
height: 22px;
}
.tab li ul li a:hover{text-decoration:underline;}
.tab li.d li a{color:#000000;}

var $ = function (d){return document.getElementById( d );};
var isIE = (document.all) ? true : false;
var Bind = function (obj,fun,arr){return function() {arr || (arr = arguments);return fun.apply(obj,arr);}};//绑定
var Tween = function(t,b,c,d){return c*t/d + b;};//缓冲函数
function addEventHandler(oTarget, sEventType, fnHandler) {if (oTarget.addEventListener) {oTarget.addEventListener(sEventType, fnHandler, false);} else if (oTarget.attachEvent) {oTarget.attachEvent("on" + sEventType, fnHandler);} else {oTarget["on" + sEventType] = fnHandler;
}
};//事件监听
function removeEventHandler(oTarget, sEventType, fnHandler) {
if (oTarget.removeEventListener) {
oTarget.removeEventListener(sEventType, fnHandler, false);
} else if (oTarget.detachEvent) {
oTarget.detachEvent("on" + sEventType, fnHandler);
} else {
oTarget["on" + sEventType] = null;
}
};//移除监听

var Timer = {};//Timer
Timer.add = function (fn){return new this.fn(fn)};
Timer.fn = function (fn){
var timer;
this.play = function (speed,only){
speed || ( speed = 10 );
if(only)timer = window.setTimeout(fn,speed);
else timer = window.setInterval(fn,speed);
};
this.stop = function (){clearTimeout(timer);clearInterval(timer)};
};
//Mask 遮罩动画
var Mask = function (){
this.fl = Timer.add(Bind(this,this.fn));
this.from_num = 0;
this.speed = 50;//动画速度,越大越慢
};
Mask.prototype.ready = function (ele,pos){
if(this.ele)this.set(this.maxWidth,this.maxHeight);
this.ele = ele;
this.maxWidth = this.ele.offsetWidth;
this.maxHeight = this.ele.offsetHeight;
this.ele.style.position = "absolute";
this.from_num = 0;
if(!pos){
var x = ["left","center","right",""][parseInt(4*Math.random())],
y = ["top","center","bottom",""][parseInt(4*Math.random())];
if(x == "" && y == "")x = "left";//避免同时为""
this.position = [x,y];
}else{
this.position = pos;
}
this.set(0,0);
this.fl.stop();
};
Mask.prototype.start = function (){this.fl.play();};
Mask.prototype.stop = function (){this.fl.stop();};
Mask.prototype.set = function (width,height){//设置遮罩的矩形,用于定位遮罩的变换方向
var t,r,b,l;
switch(this.position[0]){
case "left" :
l = 0;
r = width;
break;
case "center" :
l = (this.maxWidth - width)/2;
r = (this.maxWidth + width)/2;
break;
case "right" :
l = this.maxWidth - width;
r = this.maxWidth;
break;
default:
l = 0;
r = this.maxWidth;
}
switch(this.position[1]){
case "top" :
t = 0;
b = height;
break;
case "center" :
t = (this.maxHeight - height)/2;
b = (this.maxHeight + height)/2;
break;
case "bottom" :
t = this.maxHeight - height;
b = this.maxHeight;
break;
default :
t = 0;
b = this.maxHeight;
break;
}
this.ele.style.clip = "rect("
+ t + "px,"
+ r + "px,"
+ b + "px,"
+ l + "px)" ;
};
Mask.prototype.fn = function (){
var w,h;
this.from_num ++ ;
if(this.from_num1){
var A = _nav.getElementsByTagName("A")[0];
addEventHandler(A,type,Bind(this,fun,[A]));
}
if(_nav.nodeType == 1)_nav.getElementsByTagName("UL")[0].style.zIndex = nav.length-i;
}
function fun(ele){
var li = ele.parentNode;
var ul = li.getElementsByTagName("UL")[0];
this.z += 1
ul.style.zIndex = this.z;
if(li.className=="d")return;
li.className+=(li.className.length>0? " ": "") + "d";
this.focusEle.className=this.focusEle.className.replace(/( ?|^)d\b/g, "");
this.focusEle = li;
this.mask.ready(ul);
this.mask.start();
};
}

神秘花园
我们演示
人间仙境
  • WEB前端

    • VB封装一个文本文件读写类含示例
    • Csdn网站右下角的滑出弹出提示(带关闭功能)
    • VC++做的精美仿XP开始菜单
    • VB+Access学生综合档案管理系统
    • Delphi随机抽取幸运观众Access数据库版
    • 多线程的VC++高速文件搜索代码
  • 源码下载
    • 15个jQuery学习实例(菜单、滚动、层隐藏等)
    • VB取汉字拼音首码(第一个字母)源码
    • VB 多进制转换源程序
    • 杰奇网站管理系统 JIEQI CMS v1.7
  • 短标题
    • Delphi版视频监控系统
    • 《Java2核心技术卷2:高级特性》第7版中文高清 PDF
    • 基于Delphi的HIS自动更新程序 v2.0
    • C#早期开发的摄像头监控系统源码
    • 随机密码生成器VC++源程序
  • 更短
    • C# 酒店管理(SQL2005)
    • 云台C#家庭视频监控系统完整版
    • VS2008开发的C#高校宿舍管理系统
    • C#落雪无痕IP端口扫描器VS2005
    • 火狐浏览器 Firefox v3.5

new ImgFlash($("box"));//初始化
new Tab($("tab1"),"mouseover");

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

其实这个不只是效果,代码也是非常值得学习的。大家主要是注意页面最下面的代码
<script>
new ImgFlash($("box"));//初始化
new Tab($("tab1"),"mouseover");
</script>

(0)

相关推荐

  • jQuery图片切换插件jquery.cycle.js使用示例

    Cycle是一个很棒的jQuery图片切换插件,提供了非常好的功能来帮助大家更简单的使用插件的幻灯功能 下载cycle插件并引入,此时,注意把引入它的代码放在引入jQuery主文件之后. 复制代码 代码如下: <head> <script type="text/javascript" src="js/jquery-1.8.0.min.js"></script> <script type="text/javascri

  • 最简单的js图片切换效果实现代码

    无意中在网上发现的,代码非常的简单,一看就明白! 复制代码 代码如下: <script language =javascript > var curIndex=0; //时间间隔 单位毫秒 var timeInterval=5000; var arr=new Array(); arr[0]="1.jpg"; arr[1]="2.jpg"; arr[2]="3.jpg"; arr[3]="4.jpg"; arr[4]

  • js+div实现文字滚动和图片切换效果代码

    本文实例讲述了js+div实现文字滚动和图片切换效果代码.分享给大家供大家参考.具体如下: 这里演示js+div文字滚动和图片切换代码,为了演示方便,去掉了图片调用,用数字代替了,用时候再加上就可以了,本效果实现了两种效果,Div切换,TAB切换,和文字滚动,鼠标移上后文字停止滚动,两种功能可任意剥离出来,这不影响代码使用. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-div-txt-pic-scroll-cha-style-codes

  • JS实现的简单图片切换功能示例【测试可用】

    本文实例讲述了JS实现的简单图片切换功能.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head&

  • 用html+css+js实现的一个简单的图片切换特效

    如图所示. 该图片切换特效实现很简单,而且兼容性很好. html页面如下 复制代码 代码如下: <div class="wrapper"> <div id="focus"> <ul> <li><a href="http://www.lanrentuku.com/" target="_blank"><img src="img/01.jpg" a

  • JS图片切换的具体方法(带缩略图版)

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

  • 纯js实现背景图片切换效果代码

    html代码 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>背景切

  • 纯js无flash仿搜狐女人频道FLASH图片切换效果代码

    前2个星期看到一位朋友说如何用JS实现http://women.sohu.com/这个页中FLASH图片切换效果,这两天有空,做了一个,大家评评: [加载图片慢点请等会] www.jb51.net 我们 JS图片切换 :: * { margin:0; padding:0; } body { margin:0; color:#88c; background:#333; } img { margin:0; padding:0; border:0; } #js_F { position:relativ

  • js鼠标点击图片切换效果代码分享

    本文实例讲述了js鼠标点击图片切换效果.分享给大家供大家参考.具体如下: 实现原理很简单,其实是多张图片叠加起来,点击图片后依次赋予图片一个class,使其看起来在表面而已,点击图片,可以实现图片的不断切换效果. 运行效果图:                                      -------------------查看效果------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的js鼠标点击图片切换效果代码如下 <hea

  • JavaScript 图片切换展示效果alibaba拓展版第1/3页

    首先需要一个容器,设置它的overflow为hidden,position为relative: 容器里面还要一个滑动对象,设置它的position为absolute: 在initialize()函数里初始化一些属性. 在切换之前先执行Start()函数,进行相关设置, 主要是设置Index属性(索引)和_target属性(目标值): 复制代码 代码如下: if(this.Index < 0){ this.Index = this._count - 1; } else if (this.Index

  • javascript实现图片切换的幻灯片效果源代码

    网页上有许多图片切换的幻灯片效果,它们大多用flash实现,那javascript能不能实现他们呢,当然可以,我自己写了一个,和大家一同分享 废话少说,看代码 复制代码 代码如下: sx.activex.imagefade={ init:function(imga,fadeint,fadeoutt){ var ti=new Array(); for(var i=0;i<imga.length;i++){ ti[i]=new Image(); ti[i].src=imga[i] } var div

  • 简单的实现点击箭头图片切换的js代码

    步骤如下: (1) 准备图片(左右箭头,以及一些示例图片) (2) JS(jquery)的代码如下: 复制代码 代码如下: <script type="text/javascript" src="JS/jquery-1.4.4.js"></script> <script type="text/javascript"> var picPath = new Array(); picPath.push("I

  • js鼠标点击图片切换效果实现代码

    本文实例讲述了js鼠标点击图片切换效果实现代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: html代码: <div id="menuWrapper" class="menuWrapper bg1"> <ul class="menu" id="menu"> <li class="bg1" style="background-position:

随机推荐