1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-06-07 00:12:25 +02:00
TableFilter/dist/TF_Modules/tf_fixedHeaders.js
2015-03-06 19:49:30 +11:00

1 line
2 KiB
JavaScript

TF.prototype.SetFixedHeaders=function(){if(!this.hasGrid&&!this.isFirstLoad||!this.fixedHeaders)return;if(this.contDiv)return;var e=tf_Tag(this.tbl,"thead");if(e.length==0)return;var t=tf_Tag(this.tbl,"tbody");if(t[0].clientHeight!=0)this.prevTBodyH=t[0].clientHeight,this.prevTBodyOverflow=t[0].style.overflow,this.prevTBodyOverflowX=t[0].style.overflowX,t[0].style.height=this.tBodyH+"px",t[0].style.overflow="auto",t[0].style.overflowX="hidden";else{var n=tf_CreateElm("div",["id",this.prfxContentDiv+this.id]);n.className=this.contDivCssClass,this.tbl.parentNode.insertBefore(n,this.tbl),n.appendChild(this.tbl),this.contDiv=tf_Id(this.prfxContentDiv+this.id),this.contDiv.style.position="relative";var r=0,i=tf_Tag(e[0],"tr");for(var s=0;s<i.length;s++)i[s].style.cssText+="position:relative; top:expression(offsetParent.scrollTop);",r+=parseInt(i[s].clientHeight);this.contDiv.style.height=this.tBodyH+r+"px";var o=tf_Tag(this.tbl,"tfoot");if(o.length==0)return;var u=tf_Tag(o[0],"tr");for(var a=0;a<u.length;a++)u[a].style.cssText+="position:relative; overflow-x: hidden; top: expression(parentNode.parentNode.offsetHeight >= offsetParent.offsetHeight ? 0 - parentNode.parentNode.offsetHeight + offsetParent.offsetHeight + offsetParent.scrollTop : 0);"}},TF.prototype.RemoveFixedHeaders=function(){if(!this.hasGrid||!this.fixedHeaders)return;if(this.contDiv){this.contDiv.parentNode.insertBefore(this.tbl,this.contDiv),this.contDiv.parentNode.removeChild(this.contDiv),this.contDiv=null;var e=tf_Tag(this.tbl,"thead");if(e.length==0)return;var t=tf_Tag(e[0],"tr");if(t.length==0)return;for(var n=0;n<t.length;n++)t[n].style.cssText="";var r=tf_Tag(this.tbl,"tfoot");if(r.length==0)return;var i=tf_Tag(r[0],"tr");for(var s=0;s<i.length;s++)i[s].style.position="relative",i[s].style.top="",i[s].style.overeflowX=""}else{var o=tf_Tag(this.tbl,"tbody");if(o.length==0)return;o[0].style.height=this.prevTBodyH+"px",o[0].style.overflow=this.prevTBodyOverflow,o[0].style.overflowX=this.prevTBodyOverflowX}};