function show_b(img, id, mode) {
if(!img) {
return false;
}
else {
el = document.getElementById('binocu');
// highlight
el3 = document.getElementById('c_'+id);
// calc position
var pos = getPosition(el3);
var s = document.body.scrollTop;
var c = el3.offsetTop;
// top
if((pos.y - s) > 300) {
pos_y = pos.y - 250;
}
// bottom
else {
pos_y = pos.y + 20;
}
// left
if(pos.x > 500) {
pos_x = pos.x - 200;
}
else {
pos_x = pos.x + 100;
}
// insert content
if(mode == 'misc') {
el.innerHTML = '
';
}
else {
el.innerHTML = '
';
}
// display layer
el.style.top = pos_y;
el.style.left = pos_x;
el.style.display = 'inline';
}
}
function getPosition(element) {
var elem=element,tagname="",x=0,y=0;
while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined")) {
y+=elem.offsetTop; /* Offset des jeweiligen Elements addieren */
x+=elem.offsetLeft; /* Offset des jeweiligen Elements addieren */
tagname=elem.tagName.toUpperCase(); /* tag-Name ermitteln, Grossbuchstaben */
/* wenn beim Body-tag angekommen elem fuer Abbruch auf 0 setzen */
if (tagname=="BODY") {
elem=0;
}
/* wenn elem ein Objekt ist und offsetParent enthaelt
Offset-Elternelement ermitteln */
if (typeof(elem)=="object") {
if (typeof(elem.offsetParent)=="object") {
elem=elem.offsetParent;
}
}
}
/* Objekt mit x und y zurueckgeben */
position=new Object();
position.x=x;
position.y=y;
return position;
}
function alertPosition(elementId)
/* gibt eine Meldung mit x und y des zu elementId gehoerenden Elements aus */
{
var a,element;
/* Element-Objekt zur ID ermitteln */
element=document.getElementById(elementId);
/* Position bestimmen und melden */
a=getPosition(element);
window.alert("Position "+elementId+": ("+a.x+","+a.y+")");
}
function hide_b(id) {
document.getElementById('binocu').style.display = 'none';
}