A5下载文章资讯

分类分类

JS实现的文字与图片定时切换效果代码

2015-10-07 11:12作者:fang

本文实例讲述了JS实现的文字与图片定时切换效果代码。分享给大家供大家参考。具体如下:

这是近来门户们都喜欢用的特效,左侧是一个大图片,右侧是对应文字,鼠标移动时,对应行的文字会变化,图片也相应的切换,如果没有鼠标动作时,它会自己播放,播放时间可调整,个人感觉挺不错的导航效果。

具体代码如下:

<head>

<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>

<title>文字与图片切换</title>

<style>*{margin:0;padding:0;border:0;list-style:none}

.focusPic{width:500px;margin:0auto;clear:both;text-align:center;border:1pxsolid#ccc;}

.focusPic.focusTitle{width:240px;float:right;font-size:14px;text-align:left;}

.focusPic.focusTitleli{height:28px;line-height:28px;cursor:pointer;font-size:12px;padding-left:10px;}

.focusPic.focusTitlelia,.focusPic.focusTitlelia:visited{color:#000;}

.focusPic.focusTitlelia:hover{color:#bc2931;}

.focusPic.focusTitle.currenta,.focusPic.focusTitle.currenta:visited{color:#bc2931;}

.focusPic.focusTitle.currenta:hover{color:#bc2931;}

.focusPic#focusMenuli.current{background:#efefef;font-weight:bold;color:#bc2931;}

.focusPic#focusLeft{width:250px;overflow:hidden;float:left;background:#efefef;font-size:14px;line-height:100px;font-weight:bold;height:168px;}

.focusPic#focusLeftli{display:none;}

.focusPic#focusLeftli.current{display:block;}

</style>

</head>

<body>

<divclass="focusPic">

<ulid="focusLeft">

<liclass="current">VB在线出题考试系统</li>

<li>jQuery仿iGoogle主页模块拖动</li>

<li>jQueryUI官方实例集</li>

<li>VB在线出题考试系统</li>

<li>小妖ASP投票调查系统v4.0</li>

<li>jQuery带动画的日期选择插件</li>

</ul>

<divclass="focusTitle">

<ulid="focusMenu">

<liclass="current"><ahref="#">VB在线出题考试系统</a></li>

<li><ahref="#"target="_blank">jQuery仿iGoogle主页模块拖动</a></li>

<li><ahref="#"target="_blank">jQueryUI官方实例集</a></li>

<li><ahref="#"target="_blank">VB在线出题考试系统(MSSQL)</a></li>

<li><ahref="#"target="_blank">小妖ASP投票调查系统v4.0</a></li>

<li><ahref="#"target="_blank">jQuery带动画的日期选择插件</a></li>

</ul>

</div>

<divclass="clear"></div>

</div>

<scriptlanguage="javascript"type="text/javascript">

//<![CDATA[

var$=function(id){

returndocument.getElementById(id);

};

Function.prototype.bind=function(){

if(arguments.length<2&&arguments[0]==null){

returnthis;

}

var__method=this,args=$A(arguments),object=args.shift();

returnfunction(){return__method.apply(object,args.concat($A(arguments)));

};

};

varisArray=function(testVar){

returnArray==testVar.constructor?1:String!=testVar.constructor&&null!=testVar.length&&!testVar.alert&&!testVar.nodeType?2:0;};

var$A=function(variable){

switch(isArray(variable)){

case1:

returnvariable;

case2:

vararr=[],i=-1,len=variable.length;

while(++i<len){

arr[i]=variable[i];

}

returnarr;

default:

return[variable];

}

};

varaddClass=function(elem,className){

if((""+elem.className+"").indexOf(""+className+"")==-1){

if(elem.className==""){

elem.className=className;

}else{elem.className+=(""+className);

}

}

};

varremoveClass=function(elem,className){

varnewClass=(""+elem.className+"").replace(""+className+"","");

elem.className=newClass.substr(1,newClass.length-2);

};

varaddEvent=function(elem,eventName,handler){

if(elem.addEventListener){

elem.addEventListener(eventName,handler,false);

}elseif(elem.attachEvent){

elem.attachEvent("on"+eventName,handler);

}

};

functionSlide(menus,contents,css,eventName,interval){

varcurSeq=0,length=contents.length,timerIds=[],isStopped;

if(menus&&length!=menus.length){

thrownewError("theamountofmenusandcontentsisnotequal");

}

varhide=function(seq){

removeClass(contents[seq],css);

if(menus){

removeClass(menus[seq],css);

}

};

varshow=function(seq){

addClass(contents[seq],css);

if(menus){

addClass(menus[seq],css);

}

curSeq=seq;

};

this.showNext=function(){

varnext=curSeq+1;

if(next>=length){

next=0;

}

vari=length;

while(--i>=0){

if(i!=next){

hide(i);

}else{show(i);

}

}

};

this.change=function(event){

if(this!=menus[curSeq]){

vari=length;

while(--i>=0){

if(menus[i]!=this){

hide(i);

}else{

show(i);

}

}

}

e=window.event||event;

e.cancelBubble=true;

};

this.play=function(speed){

isStopped=false;

timerIds.push(setInterval(this.showNext.bind(this),speed));

};

this.pause=function(){

isStopped=true;

vari=length;

while(--i>=0){

clearInterval(timerIds[i]);

timerIds.splice(i,1);

}

};

vari=length;

while(--i>=0){

addEvent(menus[i],eventName,this.change.bind(menus[i]));

if(interval>0){

addEvent(menus[i],"mouseover",this.pause);

addEvent(menus[i],"mouseout",this.play.bind(this,interval));

}

}

if(interval>0){

this.play(interval);

}

}

varfocusImg=newSlide($("focusMenu").getElementsByTagName("li"),$("focusLeft").getElementsByTagName("li"),"current","mouseover",3000);

//]]>

</script>

</body>

希望本文所述对大家的JavaScript程序设计有所帮助。

展开全部

相关

说两句网友评论
    我要跟贴
    取消