jQuery修改class属性和CSS样式

原文:jQuery修改class属性和CSS样式

jQuery修改class属性和CSS样式

class属性修改

  类属性即class属性,规定类名.

  用类选择器规定样式的时候,需要为元素指定类名,即class属性的值.

  注意每个HTML元素只有一个class属性.但是class属性的值可以是多个名称,即可能包含一个词的列表,中间用空格分隔.

  具体使用方法见:http://www.w3school.com.cn/css/css_selector_class.asp

  用jQuery进行类名修改既可以用attr()方法修改”class”属性,也可以用addClass(), removeClass(), toggleClass()等方法来完成.

addClass()

  API: http://api.jquery.com/addClass/

  addClass()方法向匹配的元素增加指定的类名(一个或多个).

  注意对于元素来说,class属性可以有多个值.该方法不会移除已经存在的值,而是在原有的基础上追加一个或多个class属性.

  用attr()方法设置class属性,是一个覆盖的过程;而addClass()则是一个追加的过程.

  class之间最终是用空格来隔开的.

  如果需要添加多个类,用空格分隔类名.

  从1.4开始,这个方法的参数也可以传入一个function.

removeClass()

  API: http://api.jquery.com/removeClass/

  removeClass()方法从被选元素移除一个或多个类.如需移除若干类,用空格来分隔类名.

  如果没有传参数,该方法将会移除被选元素的所有类.

toggleClass()

  API: http://api.jquery.com/toggleClass/

  toggleClass()方法对被选元素的一个或多个类进行切换(设置或移除).

  该方法检查每个元素中的指定类,如果存在则删除,如果不存在则添加.

  通过添加参数,可以设置只进行删除或者只进行添加操作.

  格式:$(selector).toggleClass(class,switch)

  switch值为true时,只添加;为false时,只删除.

hasClass()

  API: http://api.jquery.com/hasClass/

  hasClass()方法检查被选元素是否包含指定的class.

  还可以用is()方法实现同样的功能,方法参数传入一个选择器字符串,比如”.className”.

CSS样式修改

  jQuery中还有一些方法直接返回或者设置元素的CSS属性.

css()

  API: http://api.jquery.com/css/

  读操作: 获取匹配元素集合中第一个元素的指定样式值(一个或多个).

  注:读取多个样式值的操作是在jQuery v1.9才加入的.

  写操作: 为匹配元素集合中的每一个元素设置一个或多个CSS属性的值.

  传入的参数可以是单个的键值对,也可以是PlainObject指定的多个值,还可以是function.(v1.4).

  jQuery会处理各个浏览器中不太相同的一些具体情况,比如W3C的cssFloat在IE中是styleFloat,在jQuery中,你可以使用float,然后jQuery会帮你把它翻译成每个浏览器中应该有的正确名称.

  还有,jQuery会合理解读CSS和DOM格式的多词属性,比如.css(“background-color”)和.css(“backgroundColor”),它都是可以处理的.

height()和width()

  API: http://api.jquery.com/height/http://api.jquery.com/width/

  高度和宽度属性.这个宽高值不包括padding,border和margin.除非box-sizing属性被使用了.

  注意写操作的时候set的是content的宽高,不包括box-sizing的部分.

  读操作仍然是返回集合第一个元素的属性值.

  .css(“width”)和.width()的区别是:前者返回带单位的值,比如400px;后者返回不带单位的像素数值,即400.

  所以如果值需要被用于某种计算,.height()和.width()是被推荐使用的.

  读取得到的数值不一定是整型,并且如果用户缩放了页面,其值可能是不正确的,因为浏览器没有暴露这种情况的API.

  还有一种不准确的情况,当这个元素的父元素隐藏起来时,该元素的尺寸可能读不准.

  写操作支持的value类型是字符串或者数字.

  如果是数字,jQuery默认是px为单位.

  如果是字符串,除了可以数字加单位之外,任何合理的CSS measurement都可以用,比如100%,50%,或者auto.

position()

  API: http://api.jquery.com/position/

  返回第一个匹配元素相对于父元素(offset parent)的位置.

  只有读操作.

offset()

  API: http://api.jquery.com/offset/

  返回第一个匹配元素的坐标,或者设定每一个匹配元素的坐标,这个坐标是相对于document的.

offsetParent()

  API:http://api.jquery.com/offsetParent/

  返回父类,只有读操作.

scrollLeft()和scrollTop()

  API: http://api.jquery.com/scrollLeft/http://api.jquery.com/scrollTop/

参考资料

  圣思园张龙老师JavaWeb视频教程75

  jQuery API: http://api.jquery.com/

  w3school 参考手册:

  属性操作: http://www.w3school.com.cn/jquery/jquery_ref_attributes.asp

  CSS操作:http://www.w3school.com.cn/jquery/jquery_ref_css.asp

  CSS类选择器: http://www.w3school.com.cn/css/css_selector_class.asp

时间: 2024-10-21 20:13:23

jQuery修改class属性和CSS样式的相关文章

jQuery(六) jQuery修改class属性和CSS样式

jQuery修改class属性和CSS样式 class属性修改 类属性即class属性,规定类名. 用类选择器规定样式的时候,需要为元素指定类名,即class属性的值. 注意每个HTML元素只有一个class属性.但是class属性的值可以是多个名称,即可能包含一个词的列表,中间用空格分隔. 具体使用方法见:http://www.w3school.com.cn/css/css_selector_class.asp 用jQuery进行类名修改既可以用attr()方法修改”class”属性,也可以用

jQuery获取和操作元素的属性和CSS样式

本文学习如何使用jQuery获取和操作元素的属性和CSS样式. 元素属性和Dom属性 对于下面这样一个标签元素: <img id='img' src="1.jpg" alt='1' class="imgs"></img>  我们通常将id,src,alt,class称为属性,也即元素属性.但是,当浏览器对标签元素进行解析时,会将元素解析为Dom对象,相应的,元素属性也就解析为Dom属性. 元素属性和Dom属性只是在我们对其进行不同解析时的不同

怎么修改placeholder字体的css样式

修改palceholder内文字的css样式 1 ::-webkit-input-placeholder{ 2 color: red; 3 font-size: 20px; 4 line-height: 50px; 5 } 修改class名为test1的palceholder内文字css样式 .test1::-webkit-input-placeholder{ color: red; font-size: 20px; line-height: 50px; } 例子: <!DOCTYPE html

Day 55(08/15)jquery 操作元素(属性,css,文档处理)

四 操作元素(属性,css,文档处理) 4.1 事件 页面载入 1 2 ready(fn)  // 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){}) -----------> $(function(){}) 事件绑定 //语法: 标签对象.事件(函数) eg: $("p").click(function(){}) 事件委派: $("").on(eve,[selector],[data],fn

修改博客园css样式

看到一款博客园主题,感觉很好看,只是有些css样式不怎么满意,所以自己修改了下,修改的方法在这里记录了下.皮肤连接:https://github.com/BNDong/Cnblogs-Theme-SimpleMemory/tree/v1.1.9 F12查看元素,就可以看到css样式的标签,在这里调试好后,拷贝出来就可以了. 关于css和js的压缩工具网址:http://tool.chinaz.com/Tools/CssFormat.aspx 原文地址:https://www.cnblogs.co

Jquery中animate可以操作css样式属性总结

可以用 animate() 方法来操作所有 CSS 属性吗? 是的,几乎可以!不过,需要记住一件重要的事情:当使用 animate()时, 必须使用 Camel 标记法书写所有的属性名,比如,必须使用 paddingLeft 而不是 padding-left,使用 marginRight而不是 margin-right,等等. css中的不是所有属性都可以用Jquery动画(animate函数)来动态改变,下面总结了JQ可以操作元素的一些属性: * backgroundPosition * bo

关于jquery中用函数来设置css样式

2016-12-21 23:27:55 1.jquery语法 $(selector).css(name,function(index,value)) name:必需.规定 CSS 属性的名称 function(index,value): 规定返回CSS属性新值的函数. index - 可选.接受选择器的index位置 value - 可选.接受CSS属性的当前值 2.function(index,value)的用途 相当于对通过选择符"selector"选择到的所有对象进行一次遍历,并

关于table相关的属性,CSS样式

table属性: 1:border没有设置的话表格没有边框 2:cellpadding单元格和内容的空白 3:cellspacing单元格和单元格之间的空白 4:frame规定外边框可见性 5:rules规定内边框可见性 6:规定内边框可见性 tableCSS样式: 表格 Table 属性 版本 继承性 描述 table-layout CSS2 无 设置或检索表格的布局算法 border-collapse CSS2 有 设置或检索表格的行和单元格的边是合并在一起还是按照标准的HTML样式分开 b

使用jQuery改变HTML元素的CSS样式

<script>$(document).ready(function() {$("#target1").css("color","red");});</script> <!-- Only change code above this line. --> <div class="container-fluid"><h3 class="text-primary tex