第三章 jQuery框架操作CSS

3.1 jQuery框架的CSS方法

jQuery框架提供了css方法,我们通过调用该方法传递对应的参数,可以方便的来批量设置标签的CSS样式。

使用JavaScript设置标签的样式相对来说比较麻烦,而如果需要批量的设置多个标签的样式那需要写很多代码,使用jQuery可以为我们简化该过程。

     使用原生的方式来设置标签的样式(代码示例)

 <body>
<div>我是div标签</div>
<button id="btnID">按钮</button>
<script>
window.onload = function () {
var oBtn = document.getElementById("btnID");
oBtn.onclick = function () {
var oDiv = document.getElementsByTagName("div")[0];
oDiv.style.height = "50px";
oDiv.style.width = "200px";
oDiv.style.background = "red";
}
}
</script>
</body>

    使用jQuery中的css方法来设置标签的样式(代码示例)

 <body>
<div>我是div标签</div>
<button id="btnID">按钮</button>
<script src="jquery-3.2.1.js"></script>
<script>
$(function () {
$("#btnID").click(function () {
$("div").css("height","50px").css("width","200px").css("background","red");
})
})
</script>
</body>

CSS方法的语法

① $("selector").css(name,value);
② $("selector").css(name1,value).css(name2,value)...;
③ $("selector").css( { name1 : value , name2 : value})

  代码示例

 <script>
$(function () {
$("#btnID").click(function () {
//01 CSS方法的第一种使用方式
//$("div").css("height","50px");
//$("div").css("width","200px");
//$("div").css("background","red");
//02 CSS方法的第二种使用方式:链式编程
//$("div").css("height","50px").css("width","200px").css("background","red");
//03 CSS方法的第三种使用方式:传递样式键值对的对象作为参数
$("div").css({
"height":"100px",
"width":"200px",
"background":"red"
})
})
})
</script>

  3.2 jQuery框架操作Class

  jQuery框架中操作class的方法主要有:

addClass : 为选中的所有标签批量的添加Class
hasClass:检查选定的标签中是否存在指定的Class
removeClass:把选定标签中指定的Class删除
toggleClass: 切换Class

addClass:为选中的所有标签批量的添加Class。

① $("selector")addClass("class1");
② $("selector")addClass("class1 class2");
③ $("selector")addClass("class1").addClass("class2");

hasClass:检查选定的标签中是否存在指定的Class。

  只要选中的所有标签中有一个标签存在该Class,那么就把返回true,如果选中的所有标签中都没有找到该class ,那么就返回false。

$("selector")hasClass("class1");

removeClass:把所有选定标签中指定的Class删除。

遍历jQuery实例对象中所有的标签,如果当前标签中存在该指定的class,那么就删除,如果不存在,则不作处理。

① $("selector")removeClass("class1");
② $("selector")removeClass("class1 class2");
③ $("selector")removeClass("class1").removeClass("class2");

toggleClass:切换所有选中标签的Class。

如果当前标签中存在指定的Class,那么就删除,如果不存在,那么就添加。

① $("selector")toggleClass("class1");
② $("selector")toggleClass("class1 class2");
③ $("selector")toggleClass("class1").toggleClass("class2");

  代码示例

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="JS/jquery-3.2.1.js"></script>
<style>
.class1{
width: 400px;
height: 50px;
background: red;
}
.class2{
width: 600px;
background: green;
border: 1px solid #000000;
}
</style>
</head>
<body>
<script>
$(function () {
//....
//jQuery对Class的操作:
//添加class addClass
//删除class removeClass
//检查class hasClass
//切换class toggleClass
//01 添加class
$("button").eq(0).click(function () {
//console.log("点击");
//获取指定的标签,并且设置class
//添加class:
//(1) jQ对象.addClass("类")
//(2) jQ对象.addClass("类1")..addClass("类2")
//(3) jQ对象.addClass("类1 类2")
//$("div").addClass("class1")
//$("div").addClass("class1").addClass("class2")
$("div").addClass("class1 class2")
})
//02 检查class
$("button").eq(1).click(function () {
//console.log("点击");
//获取指定的标签,并且设置class
//检查class:检查div标签中是否存在class1,如果存在那么就返回true,否则返回false
console.log($("div").hasClass("class1"));
console.log($("p").hasClass("demo1"));
})
//03 删除class
$("button").eq(2).click(function () {
//console.log("点击");
//获取指定的标签,并且设置class
//删除class:
//(1) jQ对象.removeClass("类")
//(2) jQ对象.removeClass("类1")..removeClass("类2")
//(3) jQ对象.removeClass("类1 类2")
//$("div").removeClass("class2")
//$("div").removeClass("class1").removeClass("class2")
$("div").removeClass("class1 class2")
})
//04 切换class
$("button").eq(3).click(function () {
//console.log("点击");
//获取指定的标签,并且设置class
//切换class:如果指定的class存在那么就删除,否则就添加
//(1) jQ对象.toggleClass("类")
//(2) jQ对象.toggleClass("类1 类2")
//$("div").toggleClass("class2")
$("div").toggleClass("class1 class2")
})
})
</script>
<div>我是div</div>
<p class="demo1"></p>
<p class="demo2"></p>
<button>添加</button>
<button>检查</button>
<button>删除</button>
<button>切换</button>
</body>
</html>

3.3 jQuery框架操作位置的方法介绍

① width和height方法

  $("selector").width()和$("selector").height()方法的使用:如果不传递参数则表示获取指定标签的宽度|高度,如果传递参数则表示要设置标签的宽度|高度。

② offset和position方法

  offset表示获取当前标签距离浏览器窗口的位置,而position获取当前标签距离父标签的位置

代码示例

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="JS/jquery-3.2.1.js"></script>
<style>
.class1{
width: 200px;
height: 200px;
background: rebeccapurple;
position: relative;
}
.class2{
width: 50px;
height: 50px;
background: #2aa198;
left: 10px;
top:20px;
position: absolute;
}
</style>
</head>
<body>
<script>
$(function () {
//....
//01 width和height:
//console.log($(".class2").get(0));
//获取宽度和高度:不传递参数
console.log($(".class2").width());
console.log($(".class2").height());
//设置宽度和高度:传递参数
$(".class2").width(100);
$(".class2").height(100);
console.log($(".class2").width());
console.log($(".class2").height());
//02 位置:获取当前标签距离窗口的位置 offset
console.log($(".class2").offset().left);
console.log($(".class2").offset().top);
//03 位置:获取当前标签距离父标签的位置 position
console.log($(".class2").position().left);
console.log($(".class2").position().top);
})
</script>
<div class="class1">
<div class="class2"></div>
</div>
</body>
</html>

jQuery系列 第三章 jQuery框架操作CSS的更多相关文章

  1. jQuery系列 第七章 jQuery框架DOM操作

    第七章 jQuery框架的选择器 jQuery框架继承和优化了JavaScript访问DOM对象的特性,我们使用jQuery框架提供的api可以更加方便的操作DOM对象. 7.1 创建DOM节点 使用 ...

  2. jQuery系列 第六章 jQuery框架事件处理

    第六章 jQuery框架事件处理 JavaScript以事件驱动来实现页面的交互,其核心是以消息为基础,以事件来驱动.虽然利用传统的JavaScript事件处理方式也能够完成页面交互,但jQuery框 ...

  3. jQuery系列 第五章 jQuery框架动画特效

    第五章 jQuery框架动画特效 5.1 jQuery动画特效说明 jQuery框架中为我们封装了众多的动画和特效方法,只需要调用对应的动画方法传递合适的参数,就能够方便的实现一些炫酷的效果,而且jQ ...

  4. jQuery系列 第四章 jQuery框架的选择器

    第四章 jQuery框架的选择器 4.1 jQuery选择器说明 jQuery 最核心的组成部分就是选择器引擎.它完全继承了 CSS 的风格,可以对 DOM 元 素的标签名.属性名.状态等进行快速准确 ...

  5. 第三章 jQuery中的事件与动画

    第三章jQuery中的事件与动画 一. jQuery中的事件 jQuery事件是对javaScript事件的封装. 1.基础事件 在javaScript中,常用的基础事件有鼠标事件.键盘事件.wind ...

  6. jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器

    点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...

  7. 第三章 Linux基本命令操作

    第三章  Linux基本命令操作 ¨  本节所讲内容: ¨  3.1  Linux终端介绍 Shell提示符 Bash Shell基本语法 ¨  3.2  基本命令的使用:ls.pwd.cd.hist ...

  8. 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换

    1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...

  9. 第三章 jQuery中的DOM操作

    DOM(Document Object Model)文档对象模型,每张网页都能用DOM表示出来,每一份DOM都能看成一颗DOM树. jQuery继承了JavaScript对DOM对象操作的特性,使开发 ...

随机推荐

  1. markdown语法小结

    引用数学公式1 \[ \begin{equation} \pi^2=x^2+y \label{eq_lab1} \end{equation} \] Here we cite this equation ...

  2. Sagit.Framework For IOS 开发框架入门教程6:网络请求STHttp

    前言: IOS的文章,今天,再来补一篇,Sagit的教程: 虽然感觉IOS的文章没什么观众,还是努力写吧,-_-〜 Sagit 开源地址:https://github.com/cyq1162/Sagi ...

  3. 分享:docker swarm集群搭建

    [Y_H]实践原创 三台虚拟机:1台centOS , 2台ubuntu.   网上有用docker-machine创建虚拟机做的例子.   这里直接用VMware创建这三台虚拟机,然后用xshell连 ...

  4. Python数据增强(data augmentation)库--Augmentor 使用介绍

    Augmentor 使用介绍 原图 random_distortion(probability, grid_height, grid_width, magnitude) 最终选择参数为 p.rando ...

  5. 第2次作业:Wechat创作史

    Wechat创作史   比尔盖茨曾经说过一句话:21世纪要么电子商务,要么无商可务. 2.1 介绍产品相关信息 -the information about Wechat 你选择的产品是? 选择微信作 ...

  6. 2017-2018-1 Java演绎法 第四五周 作业

    团队任务:撰写<需求规格说明书> 团队组长:袁逸灏 本次编辑:刘伟康 流程.分工.比例 (比例按照任务的费时.难度和完成情况估算) 流程 确定任务 -→ 分配任务 -→ 各组员完成各自任务 ...

  7. Beta冲刺第六天

    一.昨天的困难 没有困难. 二.今天进度 1.林洋洋:更新申请ip为域名,去除druid数据源统计 2.黄腾达:协作详情中添加成员对话框优化 3.张合胜:修复侧栏菜单mini状态下不能显示问题 三.明 ...

  8. 详谈C++虚函数表那回事(多重继承关系)

    上一篇说了一般继承,也就是单继承的虚函数表,接下来说说多重继承的虚函数表: 1.无虚函数覆盖的多重继承: 代码: #pragma once //无覆盖,多重继承 class Base1 { publi ...

  9. 2017 清北济南考前刷题Day 3 morning

    实际得分:100+0+0=100 T1 右上角是必败态,然后推下去 发现同行全是必胜态或全是必败态,不同行必胜必败交叉 列同行 所以n,m 只要有一个是偶数,先手必胜 #include<cstd ...

  10. CISCO路由器练习

    前言: 总结了昨天的学习和今天的单臂路由 写了今天的文章. 目录: 路由器的基本配置 单臂路由的练习 正文: 路由器基本配置 环境要求 cisco模拟器 2台交换机 2台PC 1台路由器 路由器介绍: ...