index.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>DOM: База</title>
  6. </head>
  7. <body>
  8. <style>
  9. table {
  10. border-collapse: collapse;
  11. }
  12. .podsvetka {
  13. background:lightgreen;
  14. }
  15. </style>
  16. <script>
  17. //------таблица умножения
  18. /*let table=document.createElement('table');
  19. table.border=1+'px';
  20. table.id='tab';
  21. for(let j=0;j<=10;j++){
  22. let tr=document.createElement('tr');
  23. if(j==0){
  24. for(let i=0;i<=10;i++){
  25. let td=document.createElement('td');
  26. td.innerText=i;
  27. td.align='center';
  28. td.height=5+'%';
  29. td.width=5+'%';
  30. tr.append(td);
  31. }
  32. }else{
  33. for(let i=0;i<=10;i++){
  34. let td=document.createElement('td');
  35. if(i==0){
  36. td.innerText=j;
  37. }else{
  38. td.innerText=i*j;
  39. }
  40. td.align='center';
  41. td.height=5+'%';
  42. td.width=5+'p%';
  43. tr.append(td);
  44. }
  45. }
  46. table.append(tr);
  47. }
  48. document.body.append(table);*/
  49. //------подсветка ячейки
  50. /*let table=document.createElement('table');
  51. table.border=1+'px';
  52. table.id='tab';
  53. table.style.borderColor='orange';
  54. for(let j=0;j<=10;j++){
  55. let tr=document.createElement('tr');
  56. if(j==0){
  57. for(let i=0;i<=10;i++){
  58. let td=document.createElement('td');
  59. td.innerText=i;
  60. td.align='center';
  61. td.height=5+'%';
  62. td.width=5+'%';
  63. tr.append(td);
  64. td.onmouseover=function(){
  65. this.style.backgroundColor='pink';
  66. }
  67. td.onmouseout=function(){
  68. this.style.backgroundColor='yellow';
  69. }
  70. }
  71. }else{
  72. for(let i=0;i<=10;i++){
  73. let td=document.createElement('td');
  74. if(i==0){
  75. td.innerText=j;
  76. }else{
  77. td.innerText=i*j;
  78. }
  79. td.onmouseover=function(){
  80. this.style.backgroundColor='pink';
  81. }
  82. td.onmouseout=function(){
  83. this.style.backgroundColor='yellow';
  84. }
  85. td.align='center';
  86. td.height=5+'%';
  87. td.width=5+'p%';
  88. tr.append(td);
  89. }
  90. }
  91. table.append(tr);
  92. }
  93. document.body.append(table);
  94. */
  95. //------подсветить строку и столбец
  96. let table=document.createElement('table');
  97. table.border=1+'px';
  98. table.id='tab';
  99. table.style.borderColor='orange';
  100. for(let j=0;j<=10;j++){
  101. let tr=document.createElement('tr');
  102. if(j==0){
  103. for(let i=0;i<=10;i++){
  104. let td=document.createElement('td');
  105. td.innerText=i;
  106. td.align='center';
  107. td.height=5+'%';
  108. td.width=5+'%';
  109. tr.append(td);
  110. }
  111. }else{
  112. for(let i=0;i<=10;i++){
  113. let td=document.createElement('td');
  114. if(i==0){
  115. td.innerText=j;
  116. }else{
  117. td.innerText=i*j;
  118. }
  119. td.align='center';
  120. td.height=5+'%';
  121. td.width=5+'p%';
  122. tr.append(td);
  123. }
  124. }
  125. table.append(tr);
  126. }
  127. table.onmouseover=function(event){
  128. let target=event.target;
  129. target.style.backgroundColor='yellow';
  130. document.querySelectorAll(".podsvetka").forEach(
  131. item => item.classList.remove("podsvetka")
  132. );
  133. target.closest("tr").classList.add("podsvetka");
  134. target.closest("table").querySelectorAll("tr").forEach(
  135. row => row.cells[target.cellIndex].classList.add("podsvetka")
  136. );
  137. }
  138. table.onmouseout=function(event){
  139. let target=event.target;
  140. target.style.backgroundColor='';
  141. document.querySelectorAll(".podsvetka").forEach(
  142. item => item.classList.remove("podsvetka")
  143. );
  144. }
  145. document.body.append(table);
  146. </script>
  147. </body>
  148. </html>