table_add = function(a) { temp=table; last=a.length-1; for(i=0;i { for(let mut of mutationRecords) { let sl=/table__col _type_btn/; let sbl=/_state_blocked/; if (sl.test(mut.target.className)) //если кнопка { if(sbl.test(mut.target.className)&&!sbl.test(mut.oldValue)&&!sbl.test(mut.target.parentNode.className)) { cell_elem=mut.target; parent_elem=cell_elem.parentElement; i=0; a=Array(); a[i++]=cell_elem.cellIndex; //номер ячейки a[i++]=parent_elem.cells[1].firstElementChild.innerText; //название indent indent=parseInt(parent_elem.firstElementChild.classList[2].match(/\d/)[0]); //номер indent temp_elem=parent_elem; indent_next=indent-1; while(indent>1) { while(indent_next!=indent) { temp_elem=temp_elem.previousSibling; indent=parseInt(temp_elem.firstElementChild.classList[2].match(/\d/)[0]); } a[i++]=temp_elem.cells[1].firstElementChild.innerText; indent_next=indent-1; } a[i]=temp_elem.parentElement.firstElementChild.cells[0].innerText; ret_count=table_add(a.reverse()); if(ret_count>=3) { if(mut.target.parentElement.cells.length>12) { switch(mut.target.cellIndex) { case 2: case 3: case 4: case 5: case 6: case 7: str=mut.target.parentElement.parentElement.rows[0].cells[mut.target.cellIndex-1].innerText+" ("+mut.target.innerText+")"; break; case 9: case 11:str='Победа команды '+mut.target.parentElement.parentElement.rows[0].cells[mut.target.cellIndex-1].innerText+' с форой '+mut.target.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; case 13:str='Тотал больше '+mut.target.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; case 14:str='Тотал меньше '+mut.target.previousElementSibling.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; } } else { switch(mut.target.cellIndex) { case 2: case 3: str=mut.target.parentElement.parentElement.rows[0].cells[mut.target.cellIndex-1].innerText+" ("+mut.target.innerText+")"; break; case 5: case 7:str='Победа команды '+mut.target.parentElement.parentElement.rows[0].cells[mut.target.cellIndex-1].innerText+' с форой '+mut.target.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; case 9:str='Тотал больше '+mut.target.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; case 10:str='Тотал меньше '+mut.target.previousElementSibling.previousElementSibling.innerText+' ('+mut.target.innerText+')'; break; } } let date=new Date(); let time=date.toLocaleTimeString(); str1=''; for(i=0;i3) (res.firstElementChild.rows[0].classList).remove(res.firstElementChild.rows[0].classList[3]); for(i=0;i<3;i++) { // res.firstElementChild.rows[0].classList[i]=mut.target.parentElement.parentElement.rows[0].classList[i]; res.firstElementChild.rows[0].cells[i].innerText=res_str[i]; } console.log(time+' '+str1+' '+str); } } } } }); //d=document.getElementById('coupons__inner'); d=document.getElementsByClassName("zone__inner") //d.parentElement.prepend(d.cloneNode(false)); d[0].parentElement.prepend(d[0].cloneNode(false)); //d=document.getElementById('coupons__inner'); d=document.getElementsByClassName("zone__inner") d[0].id='mytable'; tab=document.createElement('table'); d[0].prepend(tab); d[0].firstElementChild.setAttribute('id', 'res_tab'); res=document.getElementById('res_tab'); r=res.insertRow(0); r.setAttribute('id','res_tab_row'); //r.setAttribute('class','table__row _tytable__row _type_segment _sport_3088'); r.setAttribute('class','table__row _type_segment'); r.setAttribute('style','background-color: rgb(97, 154, 56)'); r.insertCell(0); r.insertCell(1); r.insertCell(2); r.cells[0].setAttribute('class','table__col _type_head _type_value'); r.cells[1].setAttribute('class','table__col _type_head _type_value'); r.cells[2].setAttribute('class','table__col _type_head _type_value'); let d1 =new Date(); r.cells[0].innerText=d1.toLocaleTimeString(); r.cells[1].innerText='тут будут указаны вид спорта, соревнование и т.д.'; r.cells[2].innerText='ну а тут результат'; table = new Map(); observer.observe(document.getElementsByClassName("table")[0], { subtree: true, attributes: true, attributeOldValue: true, attributeFilter: ['class'] });