Web设计师值得收藏的10个jQuery特效
jQuery已经不是什么新鲜的事儿,以前总把它认为是非常难的东西,也就没有认真去了解他了。直到学完CSS的大部分内容,才开始接触这种"write less, do more" 的Javascrīpt框架。这篇文章的最重要内容是来自Web Designer Wall的一篇教程,一篇包含了10个jQuery特效的教程。这里不打算全文翻译,想以自己的语言来表达,或许这样更方便大家理解/自己以后学习,也可能更准确地描述。
先试试看?特效实例:
View jQuery Demos:http://www.webdesignerwall.com/demo/jquery/
jQuery是如何工作的?
首先,你需要下载一个jQuery版本,并将它插入到<head>标签内。然后,你将需要写函数来告诉jQuery做些什么,下面的这个图表将告诉你jQuery是怎样工作的(请点击图片,查看大图):

如何获取元素(Get the element)?
书写jQuery函数是一个非常简单的事。关键是你要学习如何获取你想要实现的效果的确切元素。
1. ("#header") = 获取 id="header" 的元素
2. ("h3") = 获取所有<h3>
3. ("div#content .photo") = 获取<div id="content">里
4. 所有用class="photo"定义的元素
5. ("ul li") = 获取所以 <ul> 中 <li> 的元素
6. ("ul li:first") = 只获取<ul>中第一个<li>
1. 简单的下拉面板
让我们来开始这个简单的下拉面板特效吧,或许你已经见过很多次,现在,自己试试吧:

当包含class="btn-slide"的元素被点击,它会下拉/上提<div id="panel">里的元素。然后切换到CSS中的class="active"到<a class="btn-slide">元素。.active 将会以CSS的方式打开/关闭出面板。
1. $(document).ready(function(){
2.
3. $(".btn-slide").click(function(){
4. $("#panel").slideToggle("slow");
5. $(this).toggleClass("active");
6. });
7.
8. });
view demo:http://www.webdesignerwall.com/demo/jquery/simple-slide-panel.html
2. 简单的隐藏效果
如图,当右上角的上图标被点击时,内容被隐藏。

当被定义为 <img class="delete"> 的图片被点击,它会手找到父级元素 <div class="pane"> 并激活它的能力,慢慢消失,隐藏起来。
1. $(document).ready(function(){
2.
3. $(".pane .delete").click(function(){
4. $(this).parents(".pane").animate({ opacity: "hide" }, "slow");
5. });
6.
7. });
view demo:http://www.webdesignerwall.com/demo/jquery/simple-disappear.html
3 连续过渡效果
让我们来看看jQuery连贯性的威力吧。只需要几行代码,我能让这个方块渐变+缩放比例地飞来飞去。

Line 1: 当 <a class="run"> 被点击
Line 2: 激活 <div id="box"> 的不透明度(opacity)=0.1,直到值达到400px,速度达到1200px/ms
Line 3: 当opacity=0.4, top=160px,height=20,width=20,以"slow"显示
Line 4: 当opacity=1, left=0, height=100, width=100,也以"slow"显示
Line 5: 当opacity=1, left=0, height=100, width=100, 也以"slow"显示
Line 6: 当top=0, 以"fast"显示
Line 7: 然后,以常速上滑 (default speed = "normal")
Line 8: 然后以"slow"下滑
Line 9:返回失效会阻止浏览器跳向链接锚点
1. $(document).ready(function(){
2.
3. $(".run").click(function(){
4.
5. $("#box").animate({opacity: "0.1", left: "+=400"}, 1200)
6. .animate({opacity: "0.4", top: "+=160", height: "20", width: "20"}, "slow")
7. .animate({opacity: "1", left: "0", height: "100", width: "100"}, "slow")
8. .animate({top: "0"}, "fast")
9. .slideUp()
10. .slideDown("slow")
11. return false;
12.
13. });
14.
15. });
view demo:http://www.webdesignerwall.com/demo/jquery/chainable-effects.html
4a. 可折叠的模式 #1
这是第一个可折叠的样式。

第一行将向<div class="accordion"> 内的第一个<H3> 添加一个CSS class为"active"的值。 第二行刚是隐藏<div class="accordion">内非第一个< p >的内容。当 <h3> 被点击时,当前<p>下拉,而原先下拉的<p> 上提。
1. $(document).ready(function(){
2.
3. $(".accordion h3:first").addClass("active");
4. $(".accordion p:not(:first)").hide();
5. $(".accordion h3").click(function(){
6. $(this).next("p").slideToggle("slow")
7. .siblings("p:visible").slideUp("slow");
8. $(this).toggleClass("active");
9. $(this).siblings("h3").removeClass("active");
10.
11. });
12.
13. });
view demo:http://www.webdesignerwall.com/demo/jquery/accordion1.html
4b. 可折叠模式 #2
这个实例与#1非常类似,不过,它会让指定的面板像默认面板一样打开。
在CSS样式表中,设置.accordion p 为 display:none。现在,如果你像默认打开的样式一样,打开第三个面板,你可以写$(".accordion2 p").eq(2).show(); (eq = equal)来实现它,需要注意的是起始点是"0",而不是"1",所以,第三个相应的是"2",而不是"3"。
1. $(document).ready(function(){
2.
3. $(".accordion2 h3").eq(2).addClass("active");
4. $(".accordion2 p").eq(2).show();
5. $(".accordion2 h3").click(function(){
6. $(this).next("p").slideToggle("slow")
7. .siblings("p:visible").slideUp("slow");
8. $(this).toggleClass("active");
9. $(this).siblings("h3").removeClass("active"); });
10.
11. });
view demo:http://www.webdesignerwall.com/demo/jquery/accordion2.html
5a. 鼠标经过激活效果 #1
这个将会实现一个非常漂亮的,当鼠标经过时出现渐变出现的效果。当鼠标经过菜单时,它会寻找紧接着的<em>,并在上方激活它的不透明度。

1. $(document).ready(function(){
2.
3. $(".menu a").hover(function() {
4. $(this).next("em").animate({opacity: "show", top: "-75"}, "slow");
5. }, function()
6. {
7. $(this).next("em").animate({opacity: "hide", top: "-85"}, "fast");
8. });
9.
10. });
view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover1.html
5b. 鼠标经过激活 #2
这个实例会显示菜单中链接的title 属性attribute,让其以变数方式存在,并添加<em>标签。第一行会添加一个空的<em>到菜单的<a>元素。当鼠标经过菜单链接时,它会显示title的属性,让它以"hoverText(隐藏)"的形式显示,并使<em>中的文字显示隐藏文本的值。

1. $(document).ready(function(){
2.
3. $(".menu2 a").append("<em></em>");
4.
5. $(".menu2 a").hover(function() {
6. $(this).find("em").animate({opacity: "show", top: "-75"}, "slow");
7. var hoverText = $(this).attr("title");
8. $(this).find("em").text(hoverText);
9. }, function() {
10. $(this).find("em").animate({opacity: "hide", top: "-85"}, "fast");
11. });
12.
13. });
view demo:http://www.webdesignerwall.com/demo/jquery/animated-hover2.html
Web设计师值得收藏的10个jQuery特效的更多相关文章
- Web开发者必须知道的10个jQuery代码片段
在过去的几年中,jQuery一直是使用最为广泛的JavaScript脚本库.今天我们将为各位Web开发者提供10个最实用的jQuery代码片段,有需要的开发者可以保存起来. 1.检测Internet ...
- 10款jquery图片广告特效的预览及源码下载 改自[帅的相对论]
原文格式有问题,我来排版了一下,分享给大家. 1.jQuery仿海尔官网全屏焦点图特效代码 Query仿海尔官网全屏焦点图特效代码,带有左右箭头的jQuery焦点图切换特效.当焦点图切换时,下方的三块 ...
- mac设计师系列 Adobe “全家桶” 15款设计软件 值得收藏!
文章素材来源:风云社区.简书 文章收录于:风云社区 www.scoee.com,提供1700多款mac软件下载 Adobe Creative Cloud 全线产品均可开放下载(简称Adobe CC 全 ...
- 值得 Web 开发人员学习的20个 jQuery 实例教程
这篇文章挑选了20个优秀的 jQuery 实例教程,这些 jQuery 教程将帮助你把你的网站提升到一个更高的水平.其中,既有网站中常用功能的的解决方案,也有极具吸引力的亮点功能的实现方法,相信通过对 ...
- 值得收藏的8个Web端组件库
值得收藏的8个Web端组件库 Ant Design 介绍:一个服务于企业级产品的设计体系,基于『确定』和『自然』的设计价值观和模块化的解决方案,让设计者专注于更好的用户体验. 组件库地址:https: ...
- web前端/移动端H5博客专家博客大全--值得收藏的前端技术大牛博客地址
web前端/移动端H5博客专家博客大全--值得收藏的前端技术大牛博客地址 Huang Jie Blog .Com-前端开发 http://www.huangjieblog.com/?feed=rs ...
- 值得 Web 开发人员收藏的20个 HTML5 实例教程
当开始学习如何创建 Web 应用程序或网站的时候,最流行的建议之一就是阅读教程,并付诸实践.也有大量的 Web 开发的书,但光有理论没有实际行动是无用的.现在由于网络的发展,我们有很多的工具可以用于创 ...
- 100+ 值得收藏的 Web 开发资源
原文 http://mp.weixin.qq.com/s?__biz=MjM5OTEzMzQwMA==&mid=2651667152&idx=2&sn=1dd7a77a2eff ...
- 前端学习——css基础知识,选择器与html模板、值得收藏的html标签
一.css需要的html(采用html5标准) DTD,文档类型声明: <!Doctype html> 文本编码声明: <meta charset="utf-8" ...
随机推荐
- 11月8日下午Jquery取属性值(复选框、下拉列表、单选按钮)、做全选按钮、JSON存储、去空格
1.jquery取复选框的值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- 【转】ASP.NET MVC学习笔记-Controller的ActionResult
1. 返回ViewResult public ActionResult Index() { ViewData["Message"] = "Welcome ...
- 2015.4.24 移动端,chrome不兼容或无法运行的一些具体问题
1.table内input,把它的边框和focus边框都变成透明,在ff可行,但是chrome会有样式,怎么解决? 解决方法:border:none;outline:0; 2.如下代码,css3动画在 ...
- tyvj1096 数字组合
描述 在N个数中找出其和为M的若干个数.先读入正整数N(1<N<100)和M(1<M<10000), 再读入N个正数(可以有相同的数字,每个数字均在1000以内), 在这N个数 ...
- android学习链接
Android studio/Gradle学习资源:http://www.cnblogs.com/licheetec/p/4475426.html
- WSDL2java简单使用
一.使用工具WSDL2java把接口转为本地可调用的.java文件 工具的目录结构: 设置WSDL2Java(URL).bat中的参数 set Axis_Lib=.\lib set Java_Cmd= ...
- 如何修改Xampp中MySQL的root密码?
MySQL 的“root”用户默认状态是没有密码的,所以在 PHP 中您可以使用 mysql_connect("localhost","root"," ...
- PHP判断变量是否存在及函数isset() 、empty()与is_null的区别
一.举例说明 A.如何判断一个变量是否定义? <?php // 假设不存在$test 变量 if (isset($test)) { echo '$test 已经set', '<br/> ...
- 用vuejs实现一个todolist项目
用vue.js实现一个todolist项目:input输入框输入的值会呈现在下方,并且会保存在localStorage里面,而且下方的列表点击之后也会有变化: 完整代码: App.vue <te ...
- centos6.5 lamp 环境 使用yum安装方法
从网上找了一些 最后整理了下 1.安装Apache yum -y install httpd # 开机自启动 chkconfig httpd on # 启动httpd 服务 service httpd ...