首页 > 代码库 > javascript操作元素的css样式

javascript操作元素的css样式

我们经常要使用Javascript来改变页面元素的样式。当中一种办法是改变页面元素的CSS类(Class),这在传统的Javascript里,我们一般是通过处理HTML Dom的classname特性来实现的;而jQuery里提供三种方法来实现这个功能,尽管它们和传统方法的思想相通,可是却节省了很多代码。还是那句话 - “jQuery让JavaScript代码变得简洁!”
1. addClass() - 加入?CSS类
$("#target").addClass("newClass");
//#target 指的是须要加入?样式的元素的ID
//newClass 指的是CSS类的名称
2. removeClass() - 移除CSS类
$("#target").removeClass("oldClass");
//#target 指的是须要移除CSS类的元素的ID
//oldClass 指的是CSS类的名称
3. toggleClass() - 加入?或者移除CSS类:假设CSS类已经存在,它将被移除;相反,假设CSS类不存在,它将被加上。
$("#target").toggleClass("newClass")
//假设ID为“target”的元素已经定义了CSS样式,它将被移除;
//反之,CSS类”newClass“将被赋给该ID。

在实际运用中,我们经常先定义好这些CSS类,然后通过Javascript事件触发(比方点击某个链接)来改变页面元素样式。此外,jQuery还提供一种方法 hasClass("className")用来推断某个元素是否已经被赋予某个CSS类。

以下是一个完整的样例。

<!DOCTYPE HTML>
<head>
<title>图片闪烁</title>
<style type="text/css">

@-webkit-keyframes twinkling{	/*透明度由0到1*/
	0%{
		opacity:0;				/*透明度为0*/
	}
	100%{
		opacity:1;				/*透明度为1*/
	}
}

.up{
	-webkit-animation: twinkling 1s infinite ease-in-out;
}
</style>

</head>
<body>
<div id="soccer" class="up">
哈哈
</div>
<br/>
<input type="button"  onclick='btnClick()'>
<script src=http://www.mamicode.com/"./jQuery/jquery-1.8.3.js" type="text/javascript"></script>>

javascript操作元素的css样式