@ -1,7 +1,25 @@
function tcTab ( caption )
class tcTab
{
this . setConText = function ( txt )
constructor ( caption ) {
this . id = 0 ;
this . par = null ;
this . sel = false ;
this . con = null ; //Элемент с содержимым
this . href = '' ;
//Сам таб на который нажимаем (ушко)
this . div = document . createElement ( 'div' )
this . div . style . cssText = 'position: relative; top: 1px; cursor: pointer; float: left; border: 1px solid #b3b3b3; border-radius: 5px 5px 0px 0px; padding: 1px; padding-right: 4px; padding-left: 4px; margin-left: 2px; margin-right: 2px;'
this . div . style . background = '#dfdfdf' ;
this . div . innerHTML = caption ;
this . div . onmouseover = function ( obj ) { return function ( ) { if ( ! obj . sel ) obj . div . style . background = '#f0f0f0' ; } } ( this ) ;
this . div . onmouseout = function ( obj ) { return function ( ) { if ( ! obj . sel ) obj . div . style . background = '#dfdfdf' } } ( this ) ;
this . div . onclick = function ( obj ) { return function ( ) { obj . setSel ( ) ; if ( obj . href != '' ) goToURL ( obj . href ) ; } } ( this )
}
setConText ( txt )
{ if ( this . con != null ) this . con . parent . removeChild ( this . con )
this . con = document . createElement ( 'div' )
this . con . style . cssText = 'width: 100%; height: 100%;'
@ -11,23 +29,21 @@ function tcTab(caption)
return this . con
}
this . setConObj = function ( val )
setConObj ( val )
{
if ( this . con != null ) this . con . parent . removeChild ( this . con )
if ( typeof val === 'string' || val instanceof String )
val = document . getElementById ( val ) ;
if ( val === null || typeof ( val ) == 'undefined' ) return ;
this . con = val ;
if ( ! this . sel ) this . con . style . display = 'none' ;
this . par . ctt . appendChild ( this . con ) ;
return val ;
}
this . setSel = function ( )
setSel ( )
{
for ( var i = 0 ; i < this . par . tbs . length ; i ++ )
for ( let i = 0 ; i < this . par . tbs . length ; i ++ )
{ this . par . tbs [ i ] . div . style . background = '#dfdfdf'
this . par . tbs [ i ] . div . style . borderBottom = "1px solid #b3b3b3"
this . par . tbs [ i ] . sel = false
@ -39,30 +55,43 @@ function tcTab(caption)
this . con . style . display = 'block' ;
this . sel = true
}
this . id = 0 ;
this . par = null ;
this . sel = false ;
this . con = null ; //Элемент с содержимым
this . href = '' ;
//Сам таб на который нажимаем (ушко)
this . div = document . createElement ( 'div' )
this . div . style . cssText = 'position: relative; top: 1px; cursor: pointer; float: left; border: 1px solid #b3b3b3; border-radius: 5px 5px 0px 0px; padding: 1px; padding-right: 4px; padding-left: 4px; margin-left: 2px; margin-right: 2px;'
this . div . style . background = '#dfdfdf' ;
this . div . innerHTML = caption
this . div . onmouseover = function ( obj ) { return function ( ) { if ( ! obj . sel ) obj . div . style . background = '#f0f0f0' ; } } ( this ) ;
this . div . onmouseout = function ( obj ) { return function ( ) { if ( ! obj . sel ) obj . div . style . background = '#dfdfdf' } } ( this ) ;
this . div . onclick = function ( obj ) { return function ( ) { obj . setSel ( ) ; if ( obj . href != '' ) goToURL ( obj . href ) ; } } ( this )
}
/** Создать закладки
* id - контейнер либо идентификатор контейнера в который вставляем табы
*/
function tcTabs ( id )
class tcTabs
{
this . addTab = function ( caption )
constructor ( id ) {
this . tbs = new Array ( ) ;
if ( typeof id == 'string' ) this . bd = document . getElementById ( id ) ; else this . bd = id ;
this . wra = document . createElement ( 'div' ) ;
this . wra . style . cssText = "display: table; width :100%; height: 100%; padding: 0px; margin: 0px; border-collapse: collapse; border: 0px solid #000000;" ;
var tr = null ;
tr = document . createElement ( 'div' ) ;
tr . style . cssText = 'display: table-row; height: 1%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
this . btt = document . createElement ( 'div' ) ;
this . btt . style . cssText = 'display: table-cell; width :100%; height: 1%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
tr . appendChild ( this . btt ) ;
this . wra . appendChild ( tr ) ;
tr = document . createElement ( 'div' ) ;
tr . style . cssText = 'display: table-row; width :100%; height: 100%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
//Content
this . ctt = document . createElement ( 'div' ) ;
this . ctt . style . cssText = 'display:table-cell; width :100%; height: 100%; padding: 0px; margin: 0px; border; border: 1px solid #b3b3b3; overflow:hidden;'
tr . appendChild ( this . ctt ) ;
this . wra . appendChild ( tr ) ;
this . bd . appendChild ( this . wra ) ;
}
addTab ( caption )
{
var tab = new tcTab ( caption )
tab . par = this
@ -72,13 +101,13 @@ function tcTabs(id)
return tab ;
}
this . delTab = function ( tab )
delTab ( tab )
{
if ( typeof tab === 'string' || tab instanceof String )
{
} else
{
for ( var i = 0 ; i < this . tbs . length ; i ++ )
for ( let i = 0 ; i < this . tbs . length ; i ++ )
{
if ( this . tbs [ i ] == tab )
{
@ -87,31 +116,4 @@ function tcTabs(id)
}
}
}
this . tbs = new Array ( ) ;
if ( typeof id == 'string' ) this . bd = document . getElementById ( id ) ; else this . bd = id ;
this . wra = document . createElement ( 'div' ) ;
this . wra . style . cssText = "display: table; width :100%; height: 100%; padding: 0px; margin: 0px; border-collapse: collapse; border: 0px solid #000000;" ;
var tr = null ;
tr = document . createElement ( 'div' ) ;
tr . style . cssText = 'display: table-row; height: 1%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
this . btt = document . createElement ( 'div' ) ;
this . btt . style . cssText = 'display: table-cell; width :100%; height: 1%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
tr . appendChild ( this . btt ) ;
this . wra . appendChild ( tr ) ;
tr = document . createElement ( 'div' ) ;
tr . style . cssText = 'display: table-row; width :100%; height: 100%; padding: 0px; margin: 0px; border: 0px solid #0000ff;'
//Content
this . ctt = document . createElement ( 'div' ) ;
this . ctt . style . cssText = 'display:table-cell; width :100%; height: 100%; padding: 0px; margin: 0px; border; border: 1px solid #b3b3b3; overflow:hidden;'
tr . appendChild ( this . ctt ) ;
this . wra . appendChild ( tr ) ;
this . bd . appendChild ( this . wra ) ;
}