var marker_loc_x = 16; var marker_loc_y = 16; var group_flags = new Array(); var obj_arr = new Array(); function setLocator(x, y, src, alt, el_map_id, el_loc_id) { var el = document.getElementById(el_map_id); el.src = src; el.alt = alt; var m_x = findPosX(el); var m_y = findPosY(el); var loc = document.getElementById(el_loc_id); loc.style.left = '' + (m_x + x - marker_loc_x) + 'px'; loc.style.top = '' + (m_y + y - marker_loc_y) + 'px'; loc.style.display = "block"; } function findPosX(obj) { var curleft = 0; if (obj.offsetParent) { while (obj.offsetParent) { curleft += obj.offsetLeft obj = obj.offsetParent; } } else if (obj.x) curleft += obj.x; return curleft; } function findPosY(obj) { var curtop = 0; if (obj.offsetParent) { while (obj.offsetParent) { curtop += obj.offsetTop obj = obj.offsetParent; } } else if (obj.y) curtop += obj.y; return curtop; } // e : Objekt der Klasse "cMouseEvent" function moveCoord(e) { var x = e.absCrds.x; var y = e.absCrds.y; var kat_id = obj_arr[e.refObj]; var el = document.getElementById("kkCoordMap_" + kat_id); document.forms["kkCoordDebug_" + kat_id].elements["x_img"].value = (x - findPosX(el)); document.forms["kkCoordDebug_" + kat_id].elements["y_img"].value = (y - findPosY(el)); var marker = document.getElementById("kkCoordLoc_messung_" + kat_id); marker.style.left = '' + (x - marker_loc_x) + 'px'; marker.style.top = '' + (y - marker_loc_y) + 'px'; marker.style.display = "block"; } /* Gruppen AUF- bzw. ZUklappen */ function groupSwitch(id, src, alt, el_map_id, el_loc_id) { var img = document.getElementById('group_nav_img_' + id); var key = 'key_' + id; var entries = document.getElementById('entries_' + id); var el = document.getElementById(el_map_id); el.src = src; el.alt = alt; var loc = document.getElementById(el_loc_id); loc.style.display = "none"; // Flag bestimmen if (is_key(key, group_flags)) { if (group_flags[key] == 'on') { group_flags[key] = 'off'; } else { group_flags[key] = 'on'; } } else { group_flags[key] = 'on'; } // Entsprechend verhalten switch(group_flags[key]) { case 'on': img.src = 'dateien/coord/minus.gif'; entries.style.display = 'block'; break; case 'off': img.src = 'dateien/coord/plus.gif'; entries.style.display = 'none'; break; } } function is_key(key, arr) { for (var tkey in arr) { if (key == tkey) return true; } return false; }