大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新......

在这里我会从 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(三)元素操作,链式编程,动画方法的更多相关文章

  1. jQuery插件编写及链式编程模型

    jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我 ...

  2. 从零开始学 Web 之 jQuery(五)操作元素其他属性,为元素绑定事件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  3. 从零开始学 Web 之 jQuery(二)获取和操作元素的属性

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  4. 从零开始学 Web 之 jQuery(四)元素的创建添加与删除,自定义属性

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  5. 从零开始学 Web 之 jQuery(六)为元素绑定多个相同事件,解绑事件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  6. 从零开始学 Web 之 jQuery(一)jQuery的概念,页面加载事件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  7. 从零开始学 Web 之 jQuery(七)事件冒泡,事件参数对象,链式编程原理

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  8. 从零开始学 Web 之 jQuery(八)each,多库共存,包装集,插件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  9. 从零开始学 Web 之 Vue.js(五)Vue的动画

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

随机推荐

  1. Jstack定位CPU使用最多的线程及代码

    jstack可以定位到线程堆栈,根据堆栈信息我们可以定位到具体代码,所以它在JVM性能调优中使用得非常多.下面我们来一个实例找出某个Java进程中最耗费CPU的Java线程并定位堆栈信息,用到的命令有 ...

  2. git回滚远程仓库

    关于远程仓库回滚 首先,必须要明白的一件事,任何普通用户不能擅自做有关远程仓库回退的操作,如果你擅自回滚了远程仓库,会对项目团队其他人造成不可预知的影响.如果需要回退版本,先联系项目的仓库管理员,在团 ...

  3. sql语句-单表查询

    一:单表查询 CREATE TABLE `Score`( `s_id` ), `c_id` ), `s_score` ), PRIMARY KEY(`s_id`,`c_id`) ); ); ); ); ...

  4. java【基础】日期操作

    主要是date类,SimpleDateFormat类以及Calendar类的使用. date表示日期,simpleDateFormat 表示日期格式化,Calendar一般用来做时间的操作,比如加减天 ...

  5. JVM 字节码(一)字节码规范

    JVM 字节码(一)字节码规范 JVM 学习资源 Java ClassFile 字节码规范(Oracle) Java 虚拟机规范(Java SE 7 中文版) (周志明等译) Java 反编译工具 - ...

  6. Netsharp总体介绍

    作者:秋时   日期:2014年02月05日   转载须说明出处  Netsharp交流群:338963050(请有详细的请求说明) Netsharp系列文章目录结构 Netsharp是一款免费的基于 ...

  7. tensorflow学习之(一)预测一条直线y = 0.1x + 0.3

    #预测一条y = 0.1x + 0.3的直线 import tensorflow as tf import numpy as np #科学计算模块 ''' tf.random_normal([784, ...

  8. sock5协议转换http协议工具polipo使用笔记(Centos7)

    一.安装 Shadowsocks使用socks5协议,而终端很多工具目前只支持http和https等协议,所以我们为终端设置Shadowsocks的思路就是将socks5协议转换成http协议,然后为 ...

  9. C语言编程常见技巧(问题???)

    本文章根据<算法竞赛入门经典(第二版)>一书整理... 第一章 程序设计入门 printf 语句控制输出小数位数或总长度 printf("%.3f\n",8.0/5.0 ...

  10. ABP框架系列之五十一:(Timing-定时)

    Introduction While some applications target a single timezone, some others target to many different ...