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

首頁 > 語言 > JavaScript > 正文

JavaScript通過事件代理高亮顯示表格行的方法

2024-05-06 16:20:56
字體:
供稿:網(wǎng)友

這篇文章主要介紹了JavaScript通過事件代理高亮顯示表格行的方法,涉及javascript事件代理及頁面元素的操作技巧,需要的朋友可以參考下

本文實(shí)例講述了JavaScript通過事件代理高亮顯示表格行的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

 

 
  1. <!DOCTYPE html> 
  2. <html> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  5. <title>Highlight Rows</title> 
  6. <style type="text/css"
  7. table { 
  8. background-color: lightgreen; 
  9. #third { 
  10. background-color: yellow; 
  11. </style> 
  12. </head> 
  13. <body> 
  14. <!-- Demonstrating "Event Delegation" to highlight table' rows  
  15. on mouseover.  
  16. Arguments can be passed via the delegate.  
  17. My site:andrew.dx.am --> 
  18. <table id="thetable" summary="highlight demo"
  19. <tr><td>Just one</td><td>.. no another</td></tr> 
  20. <tr><td>Second</td><td>.. no another</td></tr> 
  21. <tr id="third"><td>A third</td><td>.. no another</td></tr> 
  22. <tr><td>Fourth for luck</td><td>.. no another</td></tr> 
  23. </table> 
  24. <script type="text/javascript"
  25. var addEvent = function (elem, eventType, func) { 
  26. if ( elem.addEventListener ) 
  27. addEvent = function (elem, eventType, func) { 
  28. elem.addEventListener(eventType, func, false); 
  29. }; 
  30. else if ( elem.attachEvent ) 
  31. addEvent = function (elem, eventType, func) { 
  32. elem.attachEvent('on' + eventType, func); 
  33. }; 
  34. addEvent(elem, eventType, func); 
  35. }; 
  36. var delegateEvent = function (elem, childElems, eventType, func, args) { 
  37. addEvent(elem, eventType, function (e) { 
  38. var evt = e || window.event; 
  39. var elem = evt.target || evt.srcElement; 
  40. if ( elem.nodeName.toLowerCase() == childElems.toLowerCase() ) { 
  41. func(elem, args); 
  42. }); 
  43. }; 
  44. function highlightRows(obj, args) { 
  45. if (args && args.over) { 
  46. obj.prevColour = obj.parentNode.style.backgroundColor; 
  47. obj.parentNode.style.backgroundColor = args.colour; 
  48. if (args.index && obj.title == ""
  49. obj.title = "Row " + obj.parentNode.rowIndex; 
  50. else { 
  51. obj.parentNode.style.backgroundColor = ""
  52. if (obj.title.indexOf("Row ") + 1) 
  53. obj.title = ""
  54. function init() { 
  55. delegateEvent(document.getElementById('thetable'), 'td''mouseover'
  56. highlightRows, {'colour''lightblue''over'true,  
  57. 'index'true}); 
  58. delegateEvent(document.getElementById('thetable'), 'td''mouseout'
  59. highlightRows, {'over'false}); 
  60. addEvent(window, 'load', init); 
  61. </script> 
  62. </body> 
  63. </html> 

希望本文所述對大家的javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 苍山县| 仪陇县| 哈密市| 东山县| 紫阳县| 岫岩| 邹城市| 波密县| 泰安市| 思南县| 雅江县| 达孜县| 台北市| 馆陶县| 呼伦贝尔市| 雷山县| 温州市| 含山县| 锡林浩特市| 沿河| 蒲城县| 马公市| 盐源县| 金秀| 盱眙县| 正安县| 乌鲁木齐县| 会理县| 凌海市| 凤凰县| 大名县| 浦江县| 连城县| 蒙城县| 河北省| 琼结县| 西乡县| 科技| 奉新县| 九龙县| 当阳市|