// Cross-browser replacement for createElement
function newElement(tagType, tagID, attrArray) {
   var tagObj;
   var tagAttr = '', tagGuts = '';
     
   for (var z=0; z<attrArray.length; z++) { 
	   tagAttr += attrArray[z][0] + '="' + attrArray[z][1] + '"';
	   if (z != (attrArray.length - 1)) { tagAttr += ' '; }
   }
   tagGuts = tagType + ' id="' + tagID + '" ' + tagAttr;
   
   try {
	 if (typeof document.createElementNS != 'undefined') { tagObj = document.createElementNS('http://www.w3.org/1999/xhtml', '<' + tagGuts + '>'); }
     if (typeof document.createElement != 'undefined') { tagObj = document.createElement('<' + tagGuts + '>'); }
   } catch (e) {	
     if (typeof document.createElementNS != 'undefined') { tagObj = document.createElementNS('http://www.w3.org/1999/xhtml', tagType); }
     if (typeof document.createElement != 'undefined') { tagObj = document.createElement(tagType); }
	 
	 tagObj.setAttribute('id', tagID);
	 for (var z=0; z<attrArray.length; z++) { 
	     tagObj.setAttribute(attrArray[z][0], attrArray[z][1]);
	 }
   }
   return (tagObj);
}