从零开始学 Web 之 jQuery(三)元素操作,链式编程,动画方法
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新......
- github:https://github.com/Daotin/Web
- 微信公众号:Web前端之巅
- 博客园:http://www.cnblogs.com/lvonve/
- CSDN:https://blog.csdn.net/lvonve/
在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识点,期间也会分享一些好玩的项目。现在就让我们一起进入 Web 前端学习的冒险之旅吧!

一、使用css操作元素样式
1、常规写法
$("#dv").css("width", "200px");
$("#dv").css("height", "100px");
$("#dv").css("background", "red");
2、链式写法
$("#dv").css("width", "200px").css("height", "100px").css("background", "red");
3、键值对写法
var json = {"width":"200px", "height":"100px"; "backgroundColor":"red"};
$("#dv").css(json);
二、链式编程
1、什么是链式编程?
对象在调用方法后可以继续调用方法,直到天荒地老。
2、语法
对象.方法().方法().方法().......
3、条件
链式编程的前提:对象调用方法后的返回值还是当前对象,那么就可以继续调用方法,否则不可以继续调用方法。
4、经验
在 jQuery 中,一般情况下,对象调用方法,如果这个方法是设置某个属性的话(方法有参数是设置属性的值),那么返回值几乎都是当前对象,就可以继续链式编程。
示例:
$("#dv").css("width","10px").val("haha").css("height":"20px");
三、使用类样式操作元素样式
1、添加类样式
语法:
$("#dv").addClass("类选择器");
如果需要应用多个类样式,可以使用链式编程或者在一个addClass中写两个类选择器,中间用空格隔开。
// 链式编程
$("#dv").addClass("类选择器1").addClass("类选择器2");
// 或者
$("#dv").addClass("类选择器1 类选择器2")
2、移除类样式
语法:
// 链式编程
$("#dv").removeClass("类选择器1").removeClass("类选择器2");
// 或者
$("#dv").removeClass("类选择器1 类选择器2")
3、判断是否采用类样式
语法:
// 链式编程
$("#dv").hasClass("类选择器1").hasClass("类选择器2");
// 或者
$("#dv").hasClass("类选择器1 类选择器2")
4、切换类样式
语法
$("#dv").toggleClass("类选择器");
判断是否应用类选择器,如果没应用就添加,应用了就移除。
注意:
1、addClass, removeClass, toggleClass 方法不管有没有参数,返回值都是调用其的对象,都可以链式编程。
2、使用 CSS 方式是不能添加和移除类样式的。
四、动画相关方法
1、第一组
// 参数1:时间(有两种写法:1. 1000ms,2. "normal","slow","fast")
// normal: 相当于400ms,slow:600ms,fast:200ms
// 参数2:函数(在动画执行完成之后调用)
show(参数1,参数2);
hide(参数1,参数2);
示例:
<script>
$("#btn1").click(function () {
$("#dv").hide("slow", function () {
alert("hide");
});
});
$("#btn2").click(function () {
$("#dv").show("slow", function () {
alert("show");
});
});
</script>
2、第二组
// 参数和 show hide 一样
slideDown() // 显示
sildeUp() // 隐藏
slideToggle(); // 隐藏和显示切换
示例:
<script>
$("#btn1").click(function () {
$("#dv").slideUp("slow", function () {
alert("hide");
});
});
$("#btn2").click(function () {
$("#dv").slideDown("slow", function () {
alert("show");
});
});
</script>
3、第三组
// 参数和hide show一样
fadeIn(); // 显示
fadeOut(); // 隐藏
fadeToggle(); // 隐藏和显示切换
// 参数1:时间
// 参数2:需要到达的透明度值(比如:0.2)
fadeTo(参数1,参数2)
示例:
<script>
$("#btn1").click(function () {
$("#dv").fadeOut("slow", function () {
alert("fadeOut");
});
});
$("#btn2").click(function () {
$("#dv").fadeIn("slow", function () {
alert("fadeIn");
});
});
</script>
4、综合方法
// 一般三个参数
// 参数1:css键值对,属性集合
// 参数2:时间,单位ms
// 参数3:回调函数
animate({...}, 1000, function (){...})
示例:
<script>
$("#btn1").click(function () {
$("#dv").animate({"width":"100px","height":"50px"}, 3000, function () {
console.log("第一步");
}).animate({"width":"1000px","height":"200px"}, 3000, function () {
console.log("第二步");
}).animate({"width":"300px","height":"150px"}, 3000, function () {
console.log("第三步");
});
});
</script>
PS:貌似颜色不能动画。

从零开始学 Web 之 jQuery(三)元素操作,链式编程,动画方法的更多相关文章
- jQuery插件编写及链式编程模型
jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我 ...
- 从零开始学 Web 之 jQuery(五)操作元素其他属性,为元素绑定事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(二)获取和操作元素的属性
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(四)元素的创建添加与删除,自定义属性
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(六)为元素绑定多个相同事件,解绑事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(一)jQuery的概念,页面加载事件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(七)事件冒泡,事件参数对象,链式编程原理
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 jQuery(八)each,多库共存,包装集,插件
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 从零开始学 Web 之 Vue.js(五)Vue的动画
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
随机推荐
- MySQL优化(二) 优化诀窍
一.索引的使用 (1)查询要使用索引最重要的条件是查询条件中的字段建立了索引: (2)下列几种情况可能使用到索引: <1> 对于创建的多列索引,只要查询条件使用了最坐边的列,索引一般就会被 ...
- kylin 系列(一)安装部署
kylin 系列(一)安装部署 一.环境说明 1.1 版本选择 cdh 版本下载地址:http://archive.cloudera.com/cdh5/cdh/5/ 软件名称 版本 JDK 1.8 H ...
- deug的使用经验
最基本的操作是: 1, 首先在一个java文件中设断点,然后运行,当程序走到断点处就会转到debug视图下, 2, F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6 ...
- CSS3知识!
一.引入样式 1.行内样式表 <h1 style="color: red;font-size: 18px;">10-30</h1> 2.内部样式表(在hea ...
- 小程序页面传值e.currentTarget
将页面确定上的数值5传到js 微信官网 wtml: <view class="distpicker-btn"> <view class="distpic ...
- 提取日志中出现的userId或其他信息
项目上线后经常出现需要统计用户数据.接口请求等.完美的情况下,在项目开始前就设计好哪些request.中间过程需要落地到db.或以一定格式存入专门的log中,但也常需要同学们临时去业务日志中grep ...
- IIC通讯协议(非原创,转载他人,用于学习)
I2C协议:1.空闲状态 2.开始信号 3.停止信号 4.应答信号 5.数据的有效性 6.数据传输 IIC详解 1.I2C总线具有两根双向信号线,一根是数据线SDA,另一根是时钟线SCL 2.IIC总 ...
- elasticsearch之hello(spring data整合)
1.书写pom.xml文件 <dependencies> <dependency> <groupId>org.springframework.data</gr ...
- Codeforces Round #514 (Div. 2) B - Forgery
这个题我一开始没思路,最后也没思路 2个小时一直没思路 本来还想解释题意的,写了半天发现解释的不是很清楚,你还是google翻译一下吧 这个题解法是这样的: 首先,给你图案里面有很多的点,每个点的周围 ...
- Visual Studio 2017中使用正则修改部分内容
最近在项目中想实现一个小工具,需要根据类的属性<summary>的内容加上相应的[Description]特性,需要实现的效果如下 修改前: /// <summary> /// ...