aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/adm/style/tooltip.js
diff options
context:
space:
mode:
authorMeik Sievertsen <acydburn@phpbb.com>2006-06-06 20:53:46 +0000
committerMeik Sievertsen <acydburn@phpbb.com>2006-06-06 20:53:46 +0000
commitdd9ad539fdab80badedf801a816b8a0beafbbf5c (patch)
treedb8ae8a184b060d5576604cc0dfa723773daedb8 /phpBB/adm/style/tooltip.js
parent2c8afb820e3842bed2ab6cec4053e71b5c566985 (diff)
downloadforums-dd9ad539fdab80badedf801a816b8a0beafbbf5c.tar
forums-dd9ad539fdab80badedf801a816b8a0beafbbf5c.tar.gz
forums-dd9ad539fdab80badedf801a816b8a0beafbbf5c.tar.bz2
forums-dd9ad539fdab80badedf801a816b8a0beafbbf5c.tar.xz
forums-dd9ad539fdab80badedf801a816b8a0beafbbf5c.zip
ok, this one is rather large... the most important change:
re-introduce append_sid: old style continues to work, not a performance hog as it was in 2.0.x -> structure is different apart from this, code cleanage, bug fixing, etc. git-svn-id: file:///svn/phpbb/trunk@6015 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/adm/style/tooltip.js')
-rw-r--r--phpBB/adm/style/tooltip.js98
1 files changed, 63 insertions, 35 deletions
diff --git a/phpBB/adm/style/tooltip.js b/phpBB/adm/style/tooltip.js
index 0b5a2408f4..20610b52fe 100644
--- a/phpBB/adm/style/tooltip.js
+++ b/phpBB/adm/style/tooltip.js
@@ -60,6 +60,9 @@ function enable_tooltips_link(id, headline, sub_id)
tooltip_mode = 'link';
}
+/**
+* Enable tooltip replacements for selects
+*/
function enable_tooltips_select(id, headline, sub_id)
{
var links, i, hold;
@@ -105,6 +108,9 @@ function enable_tooltips_select(id, headline, sub_id)
tooltip_mode = 'select';
}
+/**
+* Prepare elements to replace
+*/
function prepare(element)
{
var tooltip, text, desc, title;
@@ -132,14 +138,25 @@ function prepare(element)
element.tooltip = tooltip;
element.onmouseover = show_tooltip;
element.onmouseout = hide_tooltip;
+
+ if (tooltip_mode == 'link')
+ {
+ element.onmousemove = locate;
+ }
}
+/**
+* Show tooltip
+*/
function show_tooltip(e)
{
document.getElementById('_tooltip_container').appendChild(this.tooltip);
locate(this);
}
+/**
+* Hide tooltip
+*/
function hide_tooltip(e)
{
var d = document.getElementById('_tooltip_container');
@@ -149,6 +166,9 @@ function hide_tooltip(e)
}
}
+/**
+* Set opacity on tooltip element
+*/
function set_opacity(element)
{
element.style.filter = 'alpha(opacity:95)';
@@ -157,6 +177,9 @@ function set_opacity(element)
element.style.opacity = '0.95';
}
+/**
+* Create new element
+*/
function create_element(tag, c)
{
var x = document.createElement(tag);
@@ -165,59 +188,64 @@ function create_element(tag, c)
return x;
}
+/**
+* Correct positioning of tooltip container
+*/
function locate(e)
{
var posx = 0;
var posy = 0;
- if (tooltip_mode == 'link')
- {
- if (e == null)
- {
- e = window.event;
- }
+ e = e.parentNode;
- if (e.pageX || e.pageY)
+ if (e.offsetParent)
+ {
+ for (var posx = 0, posy = 0; e.offsetParent; e = e.offsetParent)
{
- posx = e.pageX;
- posy = e.pageY;
- }
- else if (e.clientX || e.clientY)
- {
- if (document.documentElement.scrollTop)
- {
- posx = e.clientX+document.documentElement.scrollLeft;
- posy = e.clientY+document.documentElement.scrollTop;
- }
- else
- {
- posx = e.clientX+document.body.scrollLeft;
- posy = e.clientY+document.body.scrollTop;
- }
+ posx += e.offsetLeft;
+ posy += e.offsetTop;
}
+ }
+ else
+ {
+ posx = e.offsetLeft;
+ posy = e.offsetTop;
+ }
- document.getElementById('_tooltip_container').style.top=(posy+10) + 'px';
+ if (tooltip_mode == 'link')
+ {
+ document.getElementById('_tooltip_container').style.top=(posy+20) + 'px';
document.getElementById('_tooltip_container').style.left=(posx-20) + 'px';
}
else
{
- e = e.parentNode;
+ document.getElementById('_tooltip_container').style.top=(posy+30) + 'px';
+ document.getElementById('_tooltip_container').style.left=(posx-205) + 'px';
+ }
- if (e.offsetParent)
+/*
+ if (e == null)
+ {
+ e = window.event;
+ }
+
+ if (e.pageX || e.pageY)
+ {
+ posx = e.pageX;
+ posy = e.pageY;
+ }
+ else if (e.clientX || e.clientY)
+ {
+ if (document.documentElement.scrollTop)
{
- for (var posx = 0, posy = 0; e.offsetParent; e = e.offsetParent)
- {
- posx += e.offsetLeft;
- posy += e.offsetTop;
- }
+ posx = e.clientX+document.documentElement.scrollLeft;
+ posy = e.clientY+document.documentElement.scrollTop;
}
else
{
- posx = e.offsetLeft;
- posy = e.offsetTop;
+ posx = e.clientX+document.body.scrollLeft;
+ posy = e.clientY+document.body.scrollTop;
}
-
- document.getElementById('_tooltip_container').style.top=(posy+30) + 'px';
- document.getElementById('_tooltip_container').style.left=(posx-205) + 'px';
}
+*/
}