国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS實現的樣式切換功能tableCSS實例

2019-11-19 18:11:45
字體:
來源:轉載
供稿:網友

本文實例分析了JS實現的樣式切換功能tableCSS。分享給大家供大家參考,具體如下:

把前陣子寫的JQ插件函數(alterBgColor )改寫成不基于JQ的代碼,還添加了一個click樣式效果

代碼風格還是按照JQ插件風格來寫,使用了閉包來循環設置TR元素的樣式

function TableCss(options){  //如果沒參數,就退出  if(arguments.length < 1 || !document.getElementById(options.tableName) ) { return ;}  //參數及默認參數  var options = {    tableName : options.tableName,    evenClass : options.evenClass || "tr_even",    oddClass : options.oddClass || "tr_odd",    clickClass : options.clickClass || "tr_click",    hoverClass: options.hoverClass || "tr_hover"    }  //根據ID找到表格元素  var tableName = document.getElementById(options.tableName);  var tr = tableName.getElementsByTagName("tr");  //對TR元素循環設置  for(var i=0, len=tr.length; i<len; i++){    //用了閉包    (function(k){      //設置奇偶行樣式      tr[k].className = (k%2==0)? options.oddClass : options.evenClass;      //點擊樣式      tr[k].onclick = function(){        if (tr[k].className == options.clickClass){          tr[k].className = (k%2==0)? options.oddClass : options.evenClass;        }        else {          tr[k].className = options.clickClass;        }      }      //鼠標HOVER樣式,如果已經是點擊樣式,則不變化      tr[k].onmouseover = function(){        if(tr[k].className == options.clickClass ){ return false;}        else { tr[k].className = options.hoverClass;}      }      tr[k].onmouseout = function(){        if(tr[k].className == options.clickClass){ return false;}        else {         tr[k].className = (k%2==0)? options.oddClass : options.evenClass;        }      }     })(i)  }}//調用TableCss({tableName:"tb1"});

效果很簡單,代碼也很簡單.

只是這句tr[k].className = (k%2==0)? options.oddClass : options.evenClass;寫了三遍,本來是寫在一個function里的,但不知道在閉包里那么寫會不會影響性能(任務管理器里也沒看到有CPU使用率暴漲的情況),最后還是決定這么寫,呵呵.

測試代碼:

<style><!--#tb1,#tb1 td{ border:1px solid #000;border-collapse:collapse}.tr_even { background:#CCC;}.tr_odd { background:#9FF;}.tr_hover { background:#FF6;}.tr_click { background:#00F;}--></style><table id="tb1" cellpadding="1" cellspacing="1">  <tr>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>  </tr>  <tr>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>  </tr>  <tr>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>  </tr>  <tr>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>    <td>123</td>    <td>456</td>  </tr></table>

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》及《JavaScript數學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 逊克县| 上思县| 阜康市| 常熟市| 成安县| 富阳市| 布尔津县| 雅安市| 郸城县| 会东县| 海伦市| 吉水县| 南召县| 祁门县| 龙游县| 商河县| 胶州市| 陇南市| 东平县| 交城县| 水富县| 蒙阴县| 阳原县| 册亨县| 洪洞县| 凌云县| 会宁县| 海宁市| 双桥区| 从江县| 渑池县| 甘南县| 绥滨县| 沧州市| 宜川县| 莆田市| 合阳县| 溧阳市| 延吉市| 泾阳县| 巴中市|