Пожалуйста =)
| Код | var toolTipSTYLE="";
function initToolTips() { var body = document.getElementsByTagName('body'); toolTipSTYLE = document.createElement("div"); toolTipSTYLE.setAttribute("id", "niamas-tooltip"); toolTipSTYLE.appendChild(document.createTextNode('tooltip')); body[0].appendChild(toolTipSTYLE); toolTipSTYLE.style.display = "none"; toolTipSTYLE.style.position = "absolute"; document.onmousemove = moveToMouseLoc; }
function createEl(elems,msgV) { var el; ///creating element el = document.createElement(elems[0]); if (elems[1] && (typeof(elems[1][0]) == 'object'))///if more then one element //Array(Array('span','hello'),Array('div','world')) { var retIE; for (var j=0;j<elems[1].length;j++) { retIE = createEl(elems[1][j],msgV); el.appendChild(retIE); } } else///if one element // Array('div','hello world') { if (typeof(elems[1]) == 'object') { retIE = createEl(elems[1],msgV); el.appendChild(retIE); } else { if (msgV) { var k = elems[1].match(/%\d%/g).length+1; for (var i=1;i<k;i++) { re = new RegExp('%' + i + '%','g'); if (msgV[i-1] == undefined) elems[1] = elems[1].replace(re,''); else elems[1]= elems[1].replace(re,msgV[i-1]); delete re; } } el.appendChild(document.createTextNode(elems[1])); } } if (elems[2]) { if (typeof(elems[2]) == 'object') { if (typeof(elems[2][0]) == 'object') { for (var i=0;i<elems[2].length;i++) el.setAttribute(elems[2][i][0],elems[2][i][1]); } else el.setAttribute(elems[2][0],elems[2][1]) } else { if (elems[2].length > 0) el.setAttributeNode(elems[2]); } } return el; }
function toolTip(msgN,msgV) { if(toolTip.arguments.length < 1) // hide toolTipSTYLE.style.display = "none"; else // show { toolTipSTYLE.replaceChild(createEl(msgN,msgV),toolTipSTYLE.firstChild); toolTipSTYLE.style.display='block'; } } function moveToMouseLoc(e) { if (document.all) { toolTipSTYLE.style.left = document.documentElement.scrollLeft + event.x + 15 + 'px'; toolTipSTYLE.style.top = document.documentElement.scrollTop + event.y + 15 + 'px'; } else { toolTipSTYLE.style.left = e.pageX + 15 + 'px'; toolTipSTYLE.style.top = e.pageY + 15 + 'px'; } return true; }
|
использование : к примеру таблица :
| Код | <body onload=" initToolTips()"> <div onmouseover="toolTip(Array("table",Array(Array("tr",Array("td","текст",Array("id","table"))),Array("tr",Array("td","текст1",Array("class","table")))),Array("position","absolute")))"> </div> </body>
| Добавлено @ 12:36 Элементы создаются на ходу. Все согласно ДОМу! |