通过jQuery,不仅能够轻松地为页面操作添加简单的视觉效果,甚至能创建更精致的动画。


###修改内联CSS

jQuery提供了.css()方法。

这个方法集getter(获取方法)和setter(设置方法)于一身。为取得某个样式属性的值,可以为这个方法传递一个字符串形式的属性名,然后同样得到一个字符串形式的属性值。要取得多个样式属性的值,可以传入属性名的数组,得到的则是属性和值构成的对象。

对于backgroundColor这样由多个单词构成的属性名,jQuery既可以解释连字符版的CSS表示法(如background-color),也可以解释驼峰大小写形式的DOM表示法(如backgroundColor)。

//取得单个属性的值
.css('property')
//返回"value"
//取得多个属性的值
.css(['property1','property-2'])
//返回{"property1":"value1","property-2":"value2"}

设置样式属性时,.css方法能够接受的参数有两种,一种是为它传递一个单独的样式属性和值,另一种是为它传递一个由属性-值对构成的对象。

//单个属性及值
.css('property','value')
//属性-值对构成的对象
.css({
property1:'value1',
'property-2':'value2'
})

这些键值的集合叫对象字面量,是在代码中直接创建的Javascript对象。

对象字面量

一般来说,数字值不需要加引号而字符串值需要加引号。由于属性名师字符串,所以属性通常是需要加引号的。但是,如果对象字面量中的属性名是有效的javascript标识符,比如使用驼峰大小写形式的DOM表示法时,则可以省略引号。

使用.css()的方式与使用.addClass()的方式相同——将它连缀到jQuery对象后面,这个jQuery对象包含一组DOM元素。

####设置计算的样式属性值

在需要多次使用某个jQuery对象时,最好也把这个对象保存到一个变量中,从而达到缓存数据的目的。

####带厂商前缀的样式属性

浏览器厂商在引入试验性的样式属性时,通常会在实现达到CSS规范要求之前,在属性名前面添加一个前缀。等到实现和规范都稳定之后,这些属性的前缀就会被去掉,让开发人员使用标准的名称。

css声明:

-webkit-property-name:value;
-moz-property-name:value;
-ms-property-name:value;
-o-property-name:value;
property-name:value;

###隐藏和显示元素

基本的.hide()和.show()方法不带任何参数。这两个方法的作用就是立即隐藏或显示匹配的元素集合,不带任何动画效果。

.hide()方法会将匹配的元素集合的内联属性设置为display:none。但它聪明之处是,能够在把display的值变成none之前,记住原先的display值,通常是block、inline或inline-block。

.show()方法会将匹配的元素集合的display属性,恢复为应用display:none之前的可见属性。


###效果和时长

当在.show()或.hide()中指定时长(一个速度)参数时,就会产生动画效果,即效果会在一个特定的时间段内发生。

####指定显示速度

对于jQuery提供的任何效果,都可以指定两种预设的速度参数:‘slow’和‘fast’。使用.show(‘slow’)会在600毫秒(0.6秒)内完成效果,而.show(‘fast’)则是200毫秒(0.2秒)。

如果传入的是其他字符串,jQuery就会在默认的400毫秒内完成效果。要指定精确的速度,可以使用毫秒数值。

####淡入和淡出

如果想在显示整个段落时,只是逐渐地增大其不透明度,可以使用.fadeIn(‘slow’)方法。

####滑上和滑下

使用jQuery的.slideDown()和.slideUp()方法仅改变元素的高度。

要让段落以垂直滑入的效果出现,可以使用:.slideDown('slow')

####切换可见性

jQuery提供了一个.toggle方法,该方法的作用类似于.show()和.hide()方法,而且与它们一样的是,.toggle()方法时长参数也是可选的。

另一个复合方法是.slodeToggle(),该方法通过逐渐增加或减少元素高度来显示或隐藏元素。


###创建自定义动画

jQuery提供了一个强大的.animate()方法,用于创建控制更加精细的自定义动画。.animate()方法有两种形式,第一种形式接收以下4个参数。

一个包含样式属性及值的对象:

可选的时长参数:既可以是预置的字符串,也可以是毫秒数值。

可选的缓动类型:

可选的回调函数:

4个参数放在一起:

.animate({property:'value1',property2:'value2'},
duration,easing,function(){
alert('The animation is finished.');
} );

第二种形式接受两个参数,一个属性对象和一个选项对象。

.animate({properties},{options})

###并发与排队效果

排队效果,即让效果一个接一个地发生。

####处理一组元素

当为同一组元素应用多重效果时,可以通过连缀这些效果轻易地实现排队。

####概括

(1)一组元素上的效果:

当在一个.animate()方法中以多个属性的方法应用时,是同时发生的。

当以方法连缀的形式应用时,是按顺序发生的(排队效果)——除非queue选项值为false。

(2)多组元素上的效果

默认情况下是同时发生的。

当在另一个效果方法或者在.queue()方法的回调函数中应用时,是按顺序发生的(排队效果)。

jQuery——样式与动画的更多相关文章

  1. jQuery样式与动画

    修改内联CSS .css() 获取 //取得单个属性的值,传入'属性名',返回"value" .css('property') //取得多个属性的值,传入'['属性1','属性2' ...

  2. jQuery学习笔记(四)jQuery中的动画

    目录 show()方法和hide()方法 fideIn()方法和fadeOut()方法 slideUp方法和slideDown()方法 自定义动画方法animate toogle(),slideTog ...

  3. 第五章 jQuery中的动画

    通过jQuery中的动画方法,能轻松地为网页添加精彩的视觉效果,给用户一种全新体验. 1.show()方法和hide()方法 该方法的功能与css()方法设置display属性效果相同. 给show( ...

  4. JQuery中的动画

    一.show()方法和hide()方法 这两种方法是jQuery动画的最基本方法.当为元素调用show方法时相当于将该元素的display样式改为block或者inline,同理,如果当元素调用hid ...

  5. 八款强大的jQuery图片滑块动画插件

    jQuery是一款相当轻巧的JavaScript框架,目前几乎每一个WEB项目都在使用jQuery,因为jQuery插件实在太丰富,尤其是 一些图片滑块插件和jQuery焦点图插件,更是多如牛毛,很多 ...

  6. jQuery基础(动画篇 animate,显示隐藏,淡入淡出,下拉切换)

    1.jQuery中隐藏元素的hide方法   让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局,如果在代码执行的时候,一般是通过js控制元 ...

  7. 自定义jQuery的animate动画

    //擦除效果 jQuery.extend(jQuery.easing, { easeOutBack : function(x, t, b, c, d, s) { s = s || 1.3; retur ...

  8. jQuery中的动画——《锋利的JQuery》

    自CSS3以来,主流网站开始偏向于扁平风格和动画效果,这时就可以jQuery的动画就可以发挥其长处了,灵活的应用其动画API,让我们可以设计出很多绚丽的效果.下面,让我们来列举一些jQuery常用的动 ...

  9. jQuery中的动画理论干货

    [jQuery中的动画] 通过jQuery动画能够轻松地为页面添加精彩的视觉效果 [show()方法和hide()方法]1.show()方法和hide()方法是jQUERY中最基本的动画方法,相当于在 ...

随机推荐

  1. 这一次,彻底理解XSS攻击

    希望读完本文大家彻底理解XSS攻击,如果读完本文还不清楚,我请你吃饭慢慢告诉你~ 话不多说,我们进入正题. 一.简述 跨站脚本(Cross-site scripting,简称为:CSS, 但这会与层叠 ...

  2. vue中的插值操作

    mustache语法 1.将data的文本数据插入至html语句中,使用mustache语法. v-once指令 2.在某些情况下,我们不希望界面随意的跟随改变,这个时候我们可以使用v-once的指令 ...

  3. ABP vNext EventBus For RabbitMQ 分布式事件总线使用注意事项_补充官网文档

    [https://docs.abp.io/zh-Hans/abp/latest/Distributed-Event-Bus-RabbitMQ-Integration](ABP vNext官方文档链接) ...

  4. TR2021_0000偶发数据库连接异常问题排查

    [问题描述] 数据库连接异常是很难排查的一类问题.因为它牵涉到应用端,网络层和服务器端.任何一个组件异常,都会导致数据库连接失败.开发遇到数据库连接不上的问题,都会第一时间找DBA来协助查看,DBA除 ...

  5. 使用uiautomatorviewer报错Error obtaining UI hierarchy

    现象:使用uiautomatorviewer报错Error obtaining UI hierarchy 解决方法:经验证关闭appium,再重新获取,就不会报错     (python运行了app代 ...

  6. 想学Python不知如何入门,教你!

    一.入门引导   想必有很多小伙伴想学习Python,又不知道如何入门,总觉得学习一定要头悬梁,锥刺股!NO,今天给大家分享下如何轻松入门Python!   首先,我们要学习Python,那一定要和你 ...

  7. 一次snapshot迁移引发的Hbase RIT(hbase2.1.0-cdh6.3.0)

    1. 问题起因 通过snapshot做跨集群数据同步时,在执行拷贝脚本里没有指定所有者及所有组,导致clone时没有权限,客户端卡死.master一直报错,经过一系列操作后,导致RIT异常. 2. 异 ...

  8. 【Python】简单的脚本,轻松批量修改文件名称

    使用python脚本,批量修改文件夹名称 先创建一些没用的案例文件 import os #创建新文件夹 dir = os.makedirs('D:\\SomeThing\\testfile') #将文 ...

  9. RCE - Pikachu

    概述: 远程系统命令执行 一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令操作的接口 比如我们常见的路由器.防火墙.入侵检测等设备的web管理界面上 一般会给用户提供一个ping操 ...

  10. C# datagridview设置标题为汉语

    正常情况下,在给datagridview绑定数据源之后,显示的是SQL语句中的栏位,如下 我们想让标题显示汉语,可以有一下两种方法 1.在SQL中设置列别名 SELECT TITLE AS '报警标题 ...