2 * author: Timothy Groves - http://www.brandspankingnew.net
3 * version: 1.5 - 2006-08-03
13 if (typeof(bsn) == "undefined")
23 if (typeof(_bsn.DOM) == "undefined")
29 _bsn.DOM.createElement = function ( type, attr, cont, html )
31 var ne = document.createElement( type );
38 if (typeof(cont) == "string" && !html)
39 ne.appendChild( document.createTextNode(cont) );
40 else if (typeof(cont) == "string" && html)
42 else if (typeof(cont) == "object")
43 ne.appendChild( cont );
52 _bsn.DOM.clearElement = function ( id )
54 var ele = this.getElement( id );
59 while (ele.childNodes.length)
60 ele.removeChild( ele.childNodes[0] );
73 _bsn.DOM.removeElement = function ( ele )
75 var e = this.getElement(ele);
79 else if (e.parentNode.removeChild(e))
89 _bsn.DOM.replaceContent = function ( id, cont, html )
91 var ele = this.getElement( id );
96 this.clearElement( ele );
98 if (typeof(cont) == "string" && !html)
99 ele.appendChild( document.createTextNode(cont) );
100 else if (typeof(cont) == "string" && html)
101 ele.innerHTML = cont;
102 else if (typeof(cont) == "object")
103 ele.appendChild( cont );
114 _bsn.DOM.getElement = function ( ele )
116 if (typeof(ele) == "undefined")
120 else if (typeof(ele) == "string")
122 var re = document.getElementById( ele );
125 else if (typeof(re.appendChild) != "undefined" ) {
131 else if (typeof(ele.appendChild) != "undefined")
143 _bsn.DOM.appendChildren = function ( id, arr )
145 var ele = this.getElement( id );
151 if (typeof(arr) != "object")
154 for (var i=0;i<arr.length;i++)
157 if (typeof(cont) == "string")
158 ele.appendChild( document.createTextNode(cont) );
159 else if (typeof(cont) == "object")
160 ele.appendChild( cont );
168 // var opt = new Array( '1'=>'lorem', '2'=>'ipsum' );
171 _bsn.DOM.createSelect = function ( attr, opt, sel )
173 var select = this.createElement( 'select', attr );
178 if (a == sel) o.selected = "selected";
179 select.appendChild( this.createElement( 'option', o, opt[a] ) );
189 _bsn.DOM.getPos = function ( ele )
191 var ele = this.getElement(ele);
196 if (obj.offsetParent)
198 while (obj.offsetParent)
200 curleft += obj.offsetLeft
201 obj = obj.offsetParent;
211 if (obj.offsetParent)
213 while (obj.offsetParent)
215 curtop += obj.offsetTop
216 obj = obj.offsetParent;
222 return {x:curleft, y:curtop}