这节课,我们看下如果使用jq的css操作方法。

你可以先运行下下面的代码,比较下jq与传统操作方式的差别:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  2. <html xmlns="http://www.w3.org/1999/xhtml"> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  5. <title>jQuery一点一滴系列教程(第二滴)</title> 
  6. <style type="text/css"> 
  7. li 
  8.     color:#369; 
  9. .current 
  10.     color:#f90; 
  11. </style> 
  12. <script type="text/javascript" src="js/jquery.js"></script> 
  13. <script type="text/javascript"> 
  14. $(function(){ 
  15.     //传统方式,需要写更多的代码 
  16.     /*var theItem=document.getElementsByTagName("li")[0];       
  17.     if(theItem.currentStyle)        
  18.         alert(theItem.currentStyle.color); 
  19.     else if(window.getComputedStyle) 
  20.         alert(window.getComputedStyle(theItem,null).color);*/ 
  21.          
  22.     alert($("li").css("color"));//获取第一个Li的color属性值       
  23. }); 
  24. </script> 
  25. </head> 
  26.  
  27. <body> 
  28. <ul> 
  29.     <li>第一行</li> 
  30.     <li class="current">第二行</li> 
  31.     <li>第三行</li> 
  32.     <li>第四行</li> 
  33.     <li>第五行</li> 
  34. </ul> 
  35. </body> 
  36. </html> 

注意jq的元素选择方式(选择器),和css的类似,可以自己比较下。

$("li")访问文档中的li元素,不管什么嵌套层次;

当然了选择类可以这样$(".current"),如果选择ID的就是$("#myId")等。

这是获取css属性值,也可以设置,如下:

 

$(function(){

//传统方式,需要写更多的代码

/*var theItem=document.getElementsByTagName("li")[0];   

if(theItem.currentStyle)   

alert(theItem.currentStyle.color);

else if(window.getComputedStyle)

alert(window.getComputedStyle(theItem,null).color);*/

//alert($("li").css("color"));//获取第一个Li的color属性值

$("ul").click(function(){

$("li").css("color","#900");

});

});

 

是不是很简单啊。

当然了另外一个重载的方式是传入对象:

 

$("ul").click(function(){

$("li").css({color:"090",backgroundColor:"#f0f0ff"});

});

这样单击ul后,发现样式的变化。

 还有一种通过函数计算返回值作为属性值的:

$("ul").click(function(){

$("li").css("backgroundColor",function(index,value){var clr=index*80;return "rgb("+clr+","+clr+","+clr+")";});

});

翻来覆去就是css()的变种,简单吧?