用JQuery写Web前端特效
以前写前端特效绝大多数用JavaScript,代码多而且调试麻烦,有第三方插件的支持,这方面的工作容易了许多,比如JQuery、ExtJS等就很好。
JQuery比较流行,用JQuery做动画真是Easy!JQuery里的EasyUI更是强悍!
比如网络上很流行的图片焦点特效,即:鼠标移到的图片呈现正常,有文字说明,失去焦点的图片变成半透明。
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Frameset//EN""http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<scripttype="text/javascript"src="jquery-1.11.0.min.js"></script>
<title>Jquery-图片焦点特效</title>
<styletype="text/css">
*{padding:0;Margin:0;list-style:none;}
#divSlide{position:relative;margin:autoauto;width:996px;height:300px;overflow:hidden;}
#divSlideul{position:absolute;top:0px;left:0px;text-align:left;cursor:pointer;}
#divSlideulli{position:relative;display:block;width:196px;float:left;}
.PSP{position:absolute;left:0;width:100%;height:35%;cursor:pointer;word-break:normal;background-color:#333333;}
.p1{width:100%;height:100%;color:#FFFFFF;word-wrap:break-word;line-height:20px;}
</style>
<scriptlanguage="javascript">
window.onload=function(){
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
}
$(function(){
$("#divSlide>ulli").mouseover(function(){
$(this).stop().fadeTo("fast",1);
$(this).css("border","1pxsolid#d70008");
s=$(this).css("height");
s=s.substring(0,s.length-2);
s=(parseInt(s)*2/3).toString();
$(this).append("<divclass='PSP'style='top:"+s+"px;'><pclass='p1'>"+$(this).children().attr("alt")+"</p></div>");
$(".PSP").stop().fadeTo("fast",0.5);
$(this).siblings().stop().fadeTo("fast",0.3);
$(this).siblings().children(".PSP").remove();
})
})
</script>
<head>
<body>
<divID=divSlide>
<ul>
<li><imgsrc="1.jpg"width=100%height=100%alt="这是第一幅照片的说明文字"/></li>
<li><imgsrc="2.jpg"width=100%height=100%alt="这是第二幅照片的说明文字"/></li>
<li><imgsrc="3.jpg"width=100%height=100%alt="这是第三幅照片的说明文字"/></li>
<li><imgsrc="4.jpg"width=100%height=100%alt="这是第四幅照片的说明文字"/></li>
<li><imgsrc="5.jpg"width=100%height=100%alt="这是第五幅照片的说明文字"/></li>
</ul>
</div>
</html>
图片拉伸效果,即鼠标移到的图片变宽,其他图片还原正常宽度。
用一行代码就可以完成。
$(this).css("width","380").css("border","5pxsolid#d70008").siblings().css("width","140").css("border","0");
网络上最多的图片滚动效果,用JQuery做可以省去不少的代码而且可以变换出更多的特效来。
varzIndex=6;
$(function(){
$("#PicScroll>olli").mouseover(function(e){
zIndex=zIndex+1;
$(this).attr("class","current");
$(this).siblings().attr("class","");
varnum=$(this).index();
$("ulli").eq(num).css("left","500px");
$("ulli").eq(num).css("z-index",zIndex);
$("ulli").eq(num).stop().animate({left:'0'},500);
})
})
链式编程是JQuery的一个亮点,其他语言也可以做到,以后的混合语言编程也可以做到这一点;其次,用JQuery写代码对于后面的维护有更好的阅读。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。