jQuery操作CSS属性的相关方法

1.前言

jQuery提供了以下几种操作DOM元素CSS样式的方法,包括直接访问、修改DOM元素的class属性值,还提供了访问、修改DOM元素内联CSS属性值的方法,除此之外还提供了大量直接访问、修改DOM元素大小和位置的方法。

jQuery提供的操作CSS属性的相关方法如下。

1)        addClass(class):将指定的CSS定义添加到jQuery对象包含的所有DOM对象上。

2)        hasClass(class):判断该jQuery对象是否包含至少一个具有指定CSS定义的DOM对象。

3)        removeClass(class):删除jQuery对象所包含的所有DOM对象上指定CSS定义。

4)        toggleClass(class):如果添加jQuey对象包含的所有DOM对象上具有指定的CSS定义,则删除该CSS定义;否则添加该CSS定义。

5)        css(name):返回该jQuery对象包含的第一个匹配的DOM对象上名为naem的CSS属性值。

6)        cssname,value):为jQuery对象包含的所有DOM对象设置单个CSS属性值。

7)        css(properties):为jQuery对象包含的所有DOM对象同时设置多个CSS属性值。

8)        offset():获取jQuery对象包含的第一个匹配的DOM对象相对于该文档的位置。

9)        position():获取jQuery对象包含的第一个匹配的DOM对象相对于其父元素的位置。

10)    scrollTop():获取jQuery对象包含的第一个匹配所有的DOM对象的scroll top值。

11)    scrollTop(val):设置jQuery对象里包含的所有DOM对象的scrollleft值。

12)    scrollLeft():获取jQuery对象包含的所有DOM对象的scrollleft值。

13)    scrollLeft(val):获取jQuery对象包含的所有DOM对象的scrollleft值。

14)    height:返回jQuery对象里第一个匹配元素的当前高度(以px为单位)

15)    height(val):设置jQuery对象里所有元素的高度,val的单位为px.

16)    width():返回jQuery对象里所有元素的宽度(以px为单位)

17)    width(val):设置jQuery对象里所有元素的宽度,val的单位为px。

2.例子

下面的程序示范了开发自定义CSS属性

 <!DOCTYPE html>
<html>
<head>
	<meta name="author" content="OwenWilliam" />
	<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
	<title> 操作CSS属性的工具方法 </title>
</head>
<body>
<div></div>
<div></div>
<script type="text/javascript" src="../jquery-1.8.0.js">
</script>
<script type="text/javascript">
(function($)
{
	var _patterns =
	{
		"msie": "progid:DXImageTransform.Microsoft.Gradient(" +
			"StartColorStr='{0}', EndColorStr='{1}', GradientType=0)",
		"msie10": "-ms-linear-gradient(top, {0} 0%, {1} 100%)",
		"mozilla": "-moz-linear-gradient(top, {0} 0%, {1} 100%)",
		"opera": "-o-linear-gradient(top, {0} 0%, {1} 100%)",
		"webkit": "-webkit-linear-gradient(top, {0} 0%, {1} 100%)",
		"unknown": "-webkit-linear-gradient(top, {0} 0%, {1} 100%)"
	};
	// 定义一个获取浏览器名称的函数
	var browserName = function()
	{
		var ua = $.browser;
		if (ua.mozilla) return "mozilla";
		else if(ua.opera) return "opera";
		else if(ua.webkit) return "webkit";
		// 判断是否为IE 10。如果IE 10,则返回msie10
		else if(ua.msie) return ua.version.split('.')[0] > 9
			? "msie10" : "msie";
		else return "unknown";
	}
	// 定义函数,针对不同浏览器生成CSS属性值
	var genCssString = function(colorStr, browser)
	{
		// 获取不同浏览器对应的CSS属性值模板
		var reStr = _patterns[browser];
		if (!reStr) return null;
		// 将colors按逗号分隔成两个字符串
		var colors = colorStr.split(',');
		if (colors.length != 2) return;
		// 将{0}占位符替换成colors[0]
		// 将{1}占位符替换成colors[1]
		return reStr.replace(/\{0\}/, colors[0])
			.replace(/\{1\}/, colors[1]);
	};
	$.cssHooks["lineGradBackground"] =
	{
		get: function (elem, computed, extra)
		{
			return elem.style.background;
		},
		set: function (elem, value)
		{
			// 获取浏览器版本
			var b = browserName();
			// 根据不同浏览器设置不同的background属性值
			// 对于早期版本的IE浏览器,应该使用filter属性
			elem.style[b == "msie" ? "filter" : "background"]
				= genCssString(value, b);
		}
	};
})(jQuery);
$("body>div").width(300)
	.height(40)
	.css("padding" , 30);
$("body>div:first").css("lineGradBackground", "#e2f, #efe");
$("body>div:last").css("lineGradBackground", "#fff, #111");
</script>
</body>
</html>

3.运行结果

时间: 2024-10-25 20:06:54

jQuery操作CSS属性的相关方法的相关文章

JQuery:JQuery操作CSS类

JQuery:CSS类jQuery - 获取并设置 CSS 类,通过 jQuery,可以很容易地对 CSS 元素进行操作.jQuery 操作 CSSjQuery 拥有若干进行 CSS 操作的方法.我们将学习下面这些: addClass() - 向被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleClass() - 对被选元素进行添加/删除类的切换操作 css() - 设置或返回样式属性 1.jQuery addClass() 方法实例1:下面的例子

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

jQuery修改操作css属性实现方法

在jquery中我们要动态的修改css属性我们只要使用css()方法就可以实现了,下面我来给各位同学详细介绍介绍. css()方法在使用上具有多样性,我们先来了解css()方法基本知识. css() 方法设置或返回被选元素的一个或多个样式属性. 返回 CSS 属性如需返回指定的 CSS 属性的值,请使用如下语法: css("propertyname");下面的例子将返回首个匹配元素的 background-color 值: 实例 $("p").css("b

jQuery修改css属性

jQuery CSS 操作jQuery 拥有三种用于 CSS 操作的重要函数:$(selector).css(name,value)$(selector).css({properties})$(selector).css(name) 函数 css(name,value) 为所有匹配元素的给定 CSS 属性设置值:实例$(selector).css(name,value)$("p").css("background-color","red"); 函

jquery操作CSS样式全记录

$(this).click(function(){  if($(this).hasClass(“zxx_fri_on”)){    $(this).removeClass(“zxx_fri_on”);  }else{    $(this).addClass(“zxx_fri_on”);  }  return false;});   添加或去除元素集合的class name 1. 使用addClass()方法 addClass(names) 添加names指定的一个或多个class name给wr

jQuery操作元素内容的相关方法

1.前言 jQuery还提供了以下几个方法来访问或设置DOM元素的内容,包含访问或设置这些DOM元素的innerHTML属性.文本内容和value属性. 1)        html():返回jQuery对象包含的第一个匹配DOM元素的HTML内容. 2)        html(val):设置jQuery对象包含的所有DOM元素的HTML内容. 3)        text():返回jQuery对象包含的所有DOM元素的文本内容. 4)        text(val):设置jQuery对象包

jQuery 操作 CSS

jQuery 拥有若干进行 CSS 操作的方法.我们将学习下面这些: addClass() - 向被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleClass() - 对被选元素进行添加/删除类的切换操作 css() - 设置或返回样式属性 原文地址:https://www.cnblogs.com/borter/p/9495514.html

js、jquery、css属性及出错集合

*)注意使用jquery设置css的语法 css("propertyname","value");#单个时时逗号 css({"propertyname":"value","propertyname":"value",...});#多个时时大括号,中间是冒号 *)jquery和js的方法是不同的 比如获取和设置textarea的内容 参考链接:https://blog.csdn.net/g

jquery 操作css 选择器

.addClass() 为每个匹配的元素添加指定的样式类名 .addClass(className) className 为每个匹配元素所有增加的一个或多个样式名 .addClass(function(index,currentClass)) 函数返回一个或者多个用空格隔开, index 表示参数匹配中的索引位置 this 指向匹配元素集合中的当前元素. $("p").addClass("myClass yourClass"); 给p 这个元素添加这两个类名样式.