jQuery UI 特效核心添加了使用 rgb()
、rgba()
、十六进制值或者颜色名比如"aqua"
来动态改变 color 属性的功能。只需要包含 jQuery UI 特效核心文件,.animate()
就会支持颜色。
支持下列属性:
backgroundColor
borderBottomColor
borderLeftColor
borderRightColor
borderTopColor
color
columnRuleColor
outlineColor
textDecorationColor
textEmphasisColor
对颜色动画的支持来自 jQuery Color 插件。Color 插件提供了一些用于颜色的函数。如需查看完整文档,请访问 jQuery Color 文档。
虽然可以直接对 color 属性进行动画化,但是通常采用另一种更好的方法,即在一个 class 中包含样式。jQuery UI 提供了一些动态添加或去除 CSS 类的方法,分别是 .addClass()
、.removeClass()
、 .toggleClass()
和 .switchClass()
。这些方法将自动确定哪些属性需要改变,哪些需要应用适当的动画。
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <title>颜色动画(Color Animation)演示</title>
- <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
- <style>
- #elem {
- color: #006;
- background-color: #aaa;
- font-size: 25px;
- padding: 1em;
- text-align: center;
- }
- </style>
- <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
- <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
- </head>
- <body>
- <div id="elem">颜色动画</div>
- <button id="toggle">改变颜色</button>
- <script>
- $( "#toggle" ).click(function() {
- $( "#elem" ).animate({
- color: "green",
- backgroundColor: "rgb( 20, 20, 20 )"
- });
- });
- </script>
- </body>
- </html>