Problem mit Imagemap unter Firefox

Lt_Hawk

Grünschnabel
Hallo vielleicht könnt ihr mir helfen. Und zwar unter dem IE funktioniert die folgende Seite Tadellos, aber unter dem Firefox funktioniert nichts und unter dem Safari geht nur die hälfte.

http://www.forthahneberg.de/cms/templates/sketch/index.html

So und nun kommt der Quelltext der Seite und der Scripte.

Die Seite ansich:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
	"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title></title>



	<script type="text/javascript" src="maputil.js"></script>

	<script type="text/javascript" src="mapper.js"></script>

<script src="toolTip.js" language="javascript" type="text/javascript"></script>

<link href="tooltip.css" rel="Stylesheet" type="text/css" media="screen" />

</head>
<body bgcolor="#FAFAC8"><div class="tooltipsammlung">
<div class="tooltip" id="t_1"><b>Glacis</b><p>Beim Glacis handelt es sich um eine künstliche Geländeaufschüttung außerhalb des Forts mit vorgeschriebenem Gefälle, frei von jeglichen Geländeunebenheiten. somit sollte es einen Angreifer unmöglich gemacht werden, im nächsten Umfeld des Forts Deckung zu finden. Im Kriegsfalle hätte man auf dem Glacis einen Drahtverhau als zusätzliches Annäherungshindernis angelegt</p></div>
<div class="tooltip" id="t_2"><b>Äußeres Festungstor</b><p>Sicherte im Verbund mit dem inneren Festungstor den Hohlweg als einzigen Zugang zum Fort. Die beiden je eine halbe tonne schweren Torflügel sowie die Torpfeiler wurden 2005 originalgetreu rekonstruiert. Das Original wurde nach 1945 beseitigt. Das Tor war schusssicher gegen Handfeuerwaffen.</p></div>
<div class="tooltip" id="t_3"><b>Kehlblockhaus</b><p>Es diente zur Verteidigung des Eingangsbereichs mittels Handfeuerwaffen und als Unterkunft für einen Teil der wachhabenden Mannschaften. Ab 1934 nahm es die Pumpstation für die Abwasserentsorgung des Forts auf.</p></div>
<div class="tooltip" id="t_4"><b>Kehlgrabenwehr</b><p>Dieses Bauwerk diente zur Beschießung des linken und rechten Kehlgrabens und somit der ganzen Eingangsseite des Forts mittels 4 Geschützen vom Kaliber 8cm, welche kartätschen (vergleichbar mit Schrotladungen) verschossen. Ab 1934 diente sie als Offizierskasino und wurde stark umgebaut.</p></div>
<div class="tooltip" id="t_5"><b>Pferdeställe</b><p>Ursprünglich dienten 5 bögen der äußeren grabenwand zur Aufnahme von 6 Reitpferden für Offiziere, nebst Sätteln und Futter. Ab 1934 wurden die Stallungen massiv in den Grabenbereich hinein erweitert.</p></div>
<div class="tooltip" id="t_6"><b>Linker Innenhof</b><p>Von den Innenhöfen führen Geschützrampen hinauf zum Oberwall mit seinen Geschützstellungen. Desweiteren gehen die rückwärtigen Ausgänge der Kehlkaserne, die belüftungsröhren der Kriegspulvermagazine sowie die Zugangstunnel zu den schultergrabenwehren von den Höfen ab. Nach 1934 wurden die Höfe durch die deutsche Wehrmacht mit doppelstöckigen Baracken verbaut, welche im 2. Weltkrieg als einzige Objekte im fort bei Luftangriffen zerstört wurden.</p></div>
<div class="tooltip" id="t_7"><b>Rechter Innenhof</b><p>Von den Innenhöfen führen Geschützrampen hinauf zum Oberwall mit seinen Geschützstellungen. Desweiteren gehen die rückwärtigen Ausgänge der Kehlkaserne, die belüftungsröhren der Kriegspulvermagazine sowie die Zugangstunnel zu den schultergrabenwehren von den Höfen ab. Nach 1934 wurden die Höfe durch die deutsche Wehrmacht mit doppelstöckigen Baracken verbaut, welche im 2. Weltkrieg als einzige Objekte im fort bei Luftangriffen zerstört wurden.</p></div>
<div class="tooltip" id="t_8"><b>Anschlussbatterie</b><p>In den späteren Stadien einer förmlichen Belagerung hätte man die fernkampfgeschütze des Forts aus selbigen entfernt und in aufgelockerter und getarnter Aufstellung neben dem fort in Stellung gebracht. Zur Munitionsversorgung wurde ein doppelstöckiger bau neben dem fort errichtet, dessen Untergeschoss über einen Tunnel vom graben aus zugänglich waren. Mittels einer Geschosshebevorrichtung wäre Munition in das Obergeschoss gekurbelt worden, von wo aus der Weitertransport an die einzelnen Geschütze erfolgte.</p></div>
<div class="tooltip" id="t_9"><b>Linker Schultergrabenwehr</b><p>Sie dienten dem Beschuss der Flankengräben mittels Gewehren und somit der Sicherung der Seiten des Forts.</p></div>
<div class="tooltip" id="t_10"><b>Rechte Schultergrabenwehr</b><p>Sie dienten dem Beschuss der Flankengräben mittels Gewehren und somit der Sicherung der Seiten des Forts.</p></div>
<div class="tooltip" id="t_11"><b>Spitzgrabenwehr</b><p>Analog zur kehlgrabenwehr diente sie zum Beschuss von zwei grabenabschnitten mittels Geschützen vom Kaliber 8cm. 1892 wurde in dieser grabenwehr ein vergleichsschießen zwischen den genannten 8 cm- und modernen 3,7cm Revolverkanonen der Firma Hotchkiss durchgeführt. Die Grabenwehr wurde nach Kriegsende weitestgehend zerstört.</p></div>
<div class="tooltip" id="t_12"><b>Kehlkaserne</b><p>Sie diente als Unterkunft der etwa 400 – 450 Mann der fort Besetzung. Desweiteren barg sie die Küche sowie die proviantlagerräume.</p></div>
<div class="tooltip" id="t_13"><b>Kehlreduit</b><p>Diente als letzte Verteidigungsstellung des Forts. Von dort aus ließen sich der eingangsbereich sowie das Innenleben des Forts unter Gewehrfeuer nehmen. Es wurde erst nach Umbau des Forts zum Sperrfort in die Planungen und schon laufenden Arbeiten integriert.</p></div>
<div class="tooltip" id="t_14"><b>Kapitaltraverse</b><p>Dieser Erdwall trennt das fort in zwei fast spiegelgleiche hälften. In ihm befinden sich der Hauptverbindungsgang sowie die beiden Kriegspulvermagazine.</p></div>
<div class="tooltip" id="t_15"><b>Inneres Festungstor</b><p>Es riegelte im Verbund mit dem äußeren Festungstor die Zufahrt zum Fort ab. Beim Umbau des Fort Hahneberg vom Gürtelfort zum Sperrfort, während der Bauphase, wurde es nachträglich erhöht.</p></div>
<div class="tooltip" id="t_16"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_17"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_18"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_19"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_20"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_21"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>

</div><div><img class="mapper iborder00aa00 icolor00ff00" src="../../../root/img/Grundriss_3D_klein.jpg" usemap="#Grundriss" border="0" width=680" height="482" alt="" />
</div>
<map name="Grundriss">
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_1');"><area shape="poly" alt="Glacis" id="Glacis" title="Glacis" coords="434,403,347,434,233,477,111,477,153,382,160,398,176,406,195,407,511,313,530,322,550,323,576,319,594,307,595,294,554,155,567,147,570,133,563,123,543,116,519,113,508,114,329,49,304,48,292,51,288,53,282,59,58,79,45,72,75,61,245,48,264,40,291,34,313,32,334,35,354,40,512,93,543,92,567,96,596,107,616,118,630,132,637,148,634,170,623,179,663,303,665,326,652,350,632,366,605,377,576,382,548,381,527,380,512,375,479,388" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_2');"><area shape="poly" alt="Haupttor" id="Haupttor" title="Haupttor" coords="64,171,64,171,99,177,98,194,91,202,50,193,64,171,64,171" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_3');"><area shape="poly" alt="Blockhaus" id="Blockhgaus" title="Blockgaus" coords="136,192,137,193,141,199,169,198,169,187,164,178,137,182,136,194" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_4');"><area shape="poly" alt="Kehlgrabenwehr" id="Kehlgrabenwehr" title="Kehlgrabenwehr" coords="205,161,206,162,183,169,181,179,189,185,216,183,216,173,208,162" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_5');"><area shape="poly" alt="Pferdeställe" id="Pferdeställe" title="Pferdeställe" coords="176,206,177,206,195,204,194,222,176,222,176,206" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_6');"><area shape="poly" alt="Linker Innenhof" id="Linker Innenhof" title="Linker Innenhof" coords="257,120,257,120,275,115,282,115,292,117,329,139,294,144,257,121" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_7');"><area shape="poly" alt="Rechter Innenhof" id="Rechter Innenhof" title="Rechter Innenhof" coords="332,229,333,230,361,229,373,219,372,183,323,187,320,195,336,195,332,229" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_8');"><area shape="poly" alt="Anschlussbatterie" id="Anschlussbatterie" title="Anschlussbatterie" coords="22,62,23,63,43,56,60,63,43,69,36,75,25,68,24,63" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_9');"><area shape="poly" alt="Linke Schultergrabenwehr" id="Linke Schultergrabenwehr" title="Linke Schultergrabenwehr" coords="304,76,304,76,327,73,314,64,309,65,311,68,302,70,304,76" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_10');"><area shape="poly" alt="Rechte Schultergrabenwehr" id="Rechte Schultergrabenwehr" title="Rechte Schultergrabenwehr" coords="508,305,508,302,509,293,499,285,547,273,552,276,556,299,556,313,549,317,538,312,525,304,508,307,508,292" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_11');"><area shape="poly" alt="Spitzgrabenwehr" id="Spitzgrabenwehr" title="Spitzgrabenwehr" coords="540,155,539,155,519,154,514,137,505,133,524,129,536,133,539,143,541,154" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_12');"><area shape="poly" alt="Kehlkaserne" id="Kehlkaserne" title="Kehlkaserne" coords="160,149,161,150,162,132,170,127,191,125,231,143,242,154,261,181,254,219,250,254,223,252,222,238,229,201,216,184,216,170,207,160,193,166,161,150,161,132,170,128" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_13');"><area shape="poly" alt="Kehlreduit" id="Kehlreduit" title="Kehlreduit" coords="233,142,234,143,247,141,262,147,247,152,262,170,277,166,282,174,279,185,264,188,261,176,235,144" href="#" /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_14');"><area shape="poly" alt="Kapitaltraverse" id="Kapitaltraverse" title="Kapitaltraverse" coords="378,153,379,154,302,164,279,159,275,167,262,170,262,161,254,150,363,137,371,140,380,150,378,154" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_15');"><area shape="circle" alt="Innentor" id="Innentor" title="Innentor" coords="172,201,8" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_16');"><area shape="poly" alt="Geschützstellung 1" id="Geschützstellung 1" title="Geschützstellung 1" coords="322,98,323,99,333,97,340,100,330,104,323,100" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_17');"><area shape="poly" alt="Geschützstellung 2" id="Geschützstellung 2" title="Geschützstellung 2" coords="353,110,354,111,363,116,374,114,363,109,355,110" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_18');"><area shape="poly" alt="Geschützstellung 3" id="Geschützstellung 3" title="Geschützstellung 3" coords="388,128,392,126,398,125,400,130,384,133,382,128" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_19');"><area shape="poly" alt="Geschützstellung 4" id="Geschützstellung 4" title="Geschützstellung 4" coords="399,147,400,148,406,154,425,150,416,144,400,146" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_20');"><area shape="poly" alt="Geschützstellung 5" id="Geschützstellung 5" title="Geschützstellung 5" coords="432,167,433,168,432,180,416,181,414,169,431,166" href="#"< /></a>
 <a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_21');"><area shape="poly" alt="Geschützstellung 6" id="Geschützstellung 6" title="Geschützstellung 6" coords="415,196,416,197,435,198,435,212,415,214,416,197" href="#"< /></a>

</map>



<div id="tooltipMouseover" class="tooltipMouseover"></div>
</body>
</html>

Tooltip.js
Code:
/**
 * DHTML Tooltip script v1.1
 * (c) 2004 Mikko Mensonen
 * www.eternityproject.net
 *
 * It's a small miracle that it works, since
 * I scrambled it together in a small hurry.
 * But it's tested on IE6, FF1.0+, Netscape 7
 * and Opera 7.5 and they all worked.
 *
 * I'll do some testing and fixing on older
 * browsers some time later.
 */

function initTooltip(divId) {
	var tooltip = document.getElementById('tooltipMouseover');
	tooltip.style.display = '';
	tooltip.style.width = '668px';
	tooltip.innerHTML = document.getElementById( divId ).innerHTML;
	document.onmousemove=followMouse;
}

function hideTooltip() {
	var tooltip = document.getElementById('tooltipMouseover');
	document.onmousemove='';
	tooltip.style.display = 'none';
	
}

function followMouse(e){
	// offset from the cursor
	var offsetx = 20;
	var offsety = 20;
	var posx = 0;
	var posy = 0;
	var tooltip = document.getElementById('tooltipMouseover');
	if (!e) {
		var e = window.event;
	}
	if (e.pageX || e.pageY) {
		posx = e.pageX;
		posy = e.pageY;
	}
	else if (e.clientX || e.clientY) {
		posx = e.clientX + document.documentElement.scrollLeft;
		posy = e.clientY + document.documentElement.scrollTop;
	}
	if (window.innerWidth || window.innerHeight){ 
		docwidth = window.innerWidth; 
		docheight = window.innerHeight; 
	} else if (document.documentElement.clientHeight || document.documentElement.clientWidth) {
		docwidth = document.documentElement.clientWidth;
		docheight = document.documentElement.clientHeight;
	} else if (document.body.clientWidth || document.body.clientHeight){ 
		docwidth = document.body.clientWidth; 
		docheight = document.body.clientHeight; 
	}
	// if tooltip goes beyond visible area, move it higher by it's width
	if ((docheight - (posy + offsety + tooltip.offsetHeight)) < 0 ) {
		offsety *= -1;
		offsety -= (tooltip.offsetHeight+offsety);
	}
	// same for the width
	if ((docwidth - (posx + offsetx + tooltip.offsetWidth)) < 0 ) {
		offsetx *= -1;
		offsetx -= (tooltip.offsetWidth+offsetx);
	}
	
	tooltip.style.left = posx + offsetx + 'px';
	tooltip.style.top = posy + offsety + 'px';
	
}

// the tooltip div
// document.write('<div id="tooltipMouseover" class="tooltipMouseover"></div>');
// --> put into main bottom file


So ich hoffe das hilft euch weiter und anschließend mir :D
 
So und noch die mapper.js

Code:
/**
 * mapper.js 2.22 (21-Mar-2009)
 * (c) by Christian Effenberger 
 * All Rights Reserved
 * Source: mapper.netzgesta.de
 * Distributed under Netzgestade Software License Agreement
 * http://www.netzgesta.de/cvi/LICENSE.txt
 * License permits free of charge
 * use on non-commercial and 
 * private web sites only 
**/

var canvascheck = document.createElement('canvas');
var isIE = window.navigator.systemLanguage?1:0;
var isVM = document.namespaces?1:0; var isJG = 0;
var isCV = canvascheck.getContext?1:0; var jg = new Array();

if(isVM) {
	if(document.namespaces['v']==null) {
		var e=["shape","shapetype","group","background","path","formulas","handles","fill","stroke","shadow","textbox","textpath","imagedata","line","polyline","curve","roundrect","oval","rect","arc","image"],s=document.createStyleSheet(); 
		for(var i=0; i<e.length; i++) {s.addRule("v\\:"+e[i],"behavior: url(#default#VML); antialias: true;");} document.namespaces.add("v","urn:schemas-microsoft-com:vml");
	} 
}

function showCoords(map,ele,x,y,w,h) {}

function getClasses(classes,string){
	var temp = '';
	for (var j=0;j<classes.length;j++) {
		if (classes[j] != string) {
			if (temp) {temp += ' '; }
			temp += classes[j];
		}
	}
	return temp;
}
function getClassValue(classes,string){
	var temp = 0; var pos = string.length;
	for (var j=0;j<classes.length;j++) {
		if (classes[j].indexOf(string) == 0) {
			temp = Math.min(classes[j].substring(pos),100);
			break;
		}
	}
	return Math.max(0,temp);
}
function getClassRGBColor(classes,string,color){
	var temp, val = color, pos = string.length;
	for (var j=0;j<classes.length;j++) {
		if (classes[j].indexOf(string) == 0) {
			temp = classes[j].substring(pos);
			val = temp.toLowerCase();
			break;
		}
	}
	if(!val.match(/^[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]$/i)) {val = color||'000000'; }
	if(!isCV) {return val; }else {
		function hex2dec(hex){return(Math.max(0,Math.min(parseInt(hex,16),255)));}
		var cr=hex2dec(val.substr(0,2)),cg=hex2dec(val.substr(2,2)),cb=hex2dec(val.substr(4,2));
		return cr+','+cg+','+cb;
	}
}
function getClassAttribute(classes,string){
	var temp = 0; var pos = string.length;
	for (var j=0;j<classes.length;j++) {
		if (classes[j].indexOf(string) == 0) {
			temp = 1; break;
		}
	}
	return temp;
}
function getMaps(className){
	var children = document.getElementsByTagName('img'); 
	var elements = new Array(); var i = 0; var mapname = '';
	var child; var classNames; var j = 0; var mapid = '';
	for(i=0;i<children.length;i++) {
		child = children[i]; classNames = child.className.split(' ');
		for(j=0;j<classNames.length;j++) {
			if(classNames[j]==className) {
				mapname = child.useMap.split("#");
				if(mapname[1]!=''&&mapname[1].length>=1) {
					mapid = document.getElementsByName(mapname[1]);
					if(mapid) {elements.push(child); break;}
				}
			}
		}
	}
	return elements;
}
function fadeCanvas(id,opac) {
	var obj = document.getElementById(id);
    if(obj.fading==1 && opac<=100) {
		obj.style.opacity = opac/100; opac += 10;
		window.setTimeout("fadeCanvas('"+id+"',"+opac+")",10);
	}
}
function setAreaOver(obj,id,bd,co,op,nb,f,z) {
	var a, i, j, d, c, o, b, n, l, r, v, u, x, y, p, k = 0, t = '', r = obj.getAttribute('rel'), context, canvas = document.getElementById(id);
	if(r!=null) {d = r.split(","); v = d.unshift(obj.id); }else {d = new Array(obj.id); }
	function setAttr() {
		if(l.indexOf('forcegroup')!=-1) {k = getClassAttribute(u,"forcegroup");}else {k=0;}
		if(l.indexOf('iopacity')!=-1) {o = getClassValue(u,"iopacity")/100;}else {o=op;}	
		if(l.indexOf('iborder')!=-1) {b = getClassRGBColor(u,"iborder",bd);}else {b=bd;}
		if(l.indexOf('icolor')!=-1) {c = getClassRGBColor(u,"icolor",co);}else {c=co;}
		if(l.indexOf('noborder')!=-1) {n = getClassAttribute(u,"noborder");}else {n=nb;}
	}
	if(isVM) {
		for(a=0;a<d.length;a++) {
			obj = document.getElementById(d[a]); if(obj) { 
			p = '', l = obj.className, u = l.split(" "), v = obj.coords.split(",");
			if(k==0) {setAttr();} 
			if(obj.shape.toLowerCase()=='rect') {
				t += '<v:rect strokeweight="1" filled="t" stroked="'+(n<1?"t":"f")+'" strokecolor="#'+b+'" style="zoom:1;margin:0;padding:0;display:block;position:absolute;left:'+parseInt(v[0])+'px;top:'+parseInt(v[1])+'px;width:'+parseInt(v[2]-v[0])+'px;height:'+parseInt(v[3]-v[1])+'px;"><v:fill color="#'+c+'" opacity="'+o+'" /></v:rect>';
			}else if(obj.shape.toLowerCase()=='circle') {
				t += '<v:oval strokeweight="1" filled="t" stroked="'+(n<1?"t":"f")+'" strokecolor="#'+b+'" style="zoom:1;margin:0;padding:0;display:block;position:absolute;left:'+parseInt(v[0]-v[2])+'px;top:'+parseInt(v[1]-v[2])+'px;width:'+(parseInt(v[2])*2)+'px;height:'+(parseInt(v[2])*2)+'px;"><v:fill color="#'+c+'" opacity="'+o+'" /></v:oval>';
			}else {
				for(j=2;j<v.length;j+=2) {p += parseInt(v[j])+','+parseInt(v[j+1])+',';}
				t += '<v:shape strokeweight="1" filled="t" stroked="'+(n<1?"t":"f")+'" strokecolor="#'+b+'" coordorigin="0,0" coordsize="'+canvas.width+','+canvas.height+'" path="m '+parseInt(v[0])+','+parseInt(v[1])+' l '+p+' x e" style="zoom:1;margin:0;padding:0;display:block;position:absolute;top:0px;left:0px;width:'+canvas.width+'px;height:'+canvas.height+'px;"><v:fill color="#'+c+'" opacity="'+o+'" /></v:shape>'; 
			}}
		} canvas.innerHTML = t;
	}else if(isCV) {
		if(f<1) {canvas.fading = 0; canvas.style.opacity = 0;}
		context = canvas.getContext("2d");
		for(a=0;a<d.length;a++) {
			obj = document.getElementById(d[a]); if(obj) {
			l = obj.className, u = l.split(" "), v = obj.coords.split(",");
			if(k==0) {setAttr();} context.beginPath();
			if(obj.shape.toLowerCase()=='rect') {
				context.rect(0.5+parseInt(v[0]),0.5+parseInt(v[1]),parseInt(v[2]-v[0]),parseInt(v[3]-v[1])); context.closePath();
			}else if(obj.shape.toLowerCase()=='circle') {
				context.arc(0.5+parseInt(v[0]),0.5+parseInt(v[1]),parseInt(v[2]),0,(Math.PI/180)*360,false);		
			}else {
				context.moveTo(parseInt(v[0]),parseInt(v[1])); for(j=2;j<v.length;j+=2) {context.lineTo(parseInt(v[j]),parseInt(v[j+1]));} context.closePath();
			} context.fillStyle = 'rgba('+c+','+o+')'; context.strokeStyle = 'rgba('+b+',1)'; context.fill(); if(n<1) {context.stroke();}}
		} if(f<1) {canvas.fading = 1; fadeCanvas(id,0);}
	}else {
		o = op; l = obj.className; u = l.split(" ");
		if(l.indexOf('forcegroup')!=-1) { k = getClassAttribute(u,"forcegroup");
		if(k!=0) {if(l.indexOf('iopacity')!=-1) {o = getClassValue(u,"iopacity")/100; k=0;}}}
		if(isIE) {canvas.style.filter = "Alpha(opacity="+(o*100)+")";
		}else {canvas.style.opacity = o; canvas.style.MozOpacity = o; canvas.style.KhtmlOpacity = o;}
		for(a=0;a<d.length;a++) {
			obj = document.getElementById(d[a]); if(obj) {
			l = obj.className, u = l.split(" "), v = obj.coords.split(",");
			if(k==0) {
				if(l.indexOf('forcegroup')!=-1) {k = getClassAttribute(u,"forcegroup");}else {k=0;}
				if(l.indexOf('icolor')!=-1) {c = getClassRGBColor(u,"icolor",co);}else {c=co;}
			} jg[z].setColor("#"+c);
			if(obj.shape.toLowerCase()=='rect') {
				jg[z].fillRect(parseInt(v[0]),parseInt(v[1]),parseInt(v[2]-v[0])+1,parseInt(v[3]-v[1])+1);
			}else if(obj.shape.toLowerCase()=='circle') {
				jg[z].fillEllipse(parseInt(v[0]-v[2]),parseInt(v[1]-v[2]),parseInt(v[2])*2+1,parseInt(v[2])*2+1);
			}else {x = new Array(); y = new Array(); i = 0; for(j=0;j<v.length;j+=2) {x[i] = parseInt(v[j]); y[i] = parseInt(v[j+1]); i++;} jg[z].fillPolygon(x,y);
			} jg[z].paint();}
		}
	}
}
function setAreaOut(obj,id,f,z) {
	var canvas = document.getElementById(id);
	if(isVM) {canvas.innerHTML = '';}else 
	if(isJG) {jg[z].clear();}else if(isCV) {
		var context = canvas.getContext("2d");
		context.clearRect(0,0,canvas.width,canvas.height);
	}
}
function getCoords(e,n,a,i,x,y,w,h,pw,ph) {
	var t, o, ox, oy, ex, ey, cx, cy, px=0, py=0;
	if (!e) {e = window.event; }
	if (e.pageX || e.pageY) {px = e.pageX; py = e.pageY;}
	ex = e.clientX; ey = e.clientY;
	if(self.pageXOffset||self.pageYOffset) {
		ox = self.pageXOffset; if(ox>0 && px==ex) {ex -= ox; }
		oy = self.pageYOffset; if(oy>0 && py==ey) {ey -= oy; }
	}else if(document.documentElement) {
		ox = document.documentElement.scrollLeft; 
		oy = document.documentElement.scrollTop;
	}else if(document.body) {
		ox = document.body.scrollLeft; oy = document.body.scrollTop;
	} 
	if(document.body.scrollHeight!=ph||document.body.scrollWidth!=pw) {
		var o = document.getElementById(i);
		var t = findPosXY(o); x = t.x; y = t.y;
	}
	cx = Math.min(Math.max(ex+ox-x,0),w); 
	cy = Math.min(Math.max(ey+oy-y,0),h);
	showCoords(n,a,cx,cy,w,h);
}
function findPosXY(ele) {
	var t; var d = {x:ele.offsetLeft, y:ele.offsetTop };
	if(ele.offsetParent) { t = findPosXY(ele.offsetParent); d.x += t.x; d.y += t.y;}
	return d;
}
function roundedRect(ctx,x,y,width,height,radius,nopath){
	if (!nopath) ctx.beginPath();
	ctx.moveTo(x,y+radius);
	ctx.lineTo(x,y+height-radius);
	ctx.quadraticCurveTo(x,y+height,x+radius,y+height);
	ctx.lineTo(x+width-radius,y+height);
	ctx.quadraticCurveTo(x+width,y+height,x+width,y+height-radius);
	ctx.lineTo(x+width,y+radius);
	ctx.quadraticCurveTo(x+width,y,x+width-radius,y);
	ctx.lineTo(x+radius,y);
	ctx.quadraticCurveTo(x,y,x,y+radius);
	if (!nopath) ctx.closePath();
}
function getRadius(radius,width,height){
	var part = (Math.min(width,height)/100);
	radius = Math.max(Math.min(100,radius/part),0);
	return radius + '%';
}
function addMapper() {
	var themaps = getMaps('mapper');
	var image, object, bgrnd, canvas, blind, context, mapid, mname, ele, atr; 
	var classes = '', newClasses = '', func = '', tmp, i, j, o, b, c, d, r, t, n, f, x, y, w, h, pw, ph;
	for(i=0;i<themaps.length;i++) {
		image = themaps[i]; object = image.parentNode;
		if(image.id=='') {image.id = "gmipam_"+i;}
		object.style.position = (object.style.position=='static'||object.style.position==''?'relative':object.style.position);
		object.style.height = image.height+'px';
		object.style.width = image.width+'px';
		object.style.padding = 0+'px';
		object.style.MozUserSelect = "none";
		object.style.KhtmlUserSelect = "none"; 
		object.unselectable = "on";
		r = 0; n = 0; f = 0; b = '0000ff'; c = '000000'; o = 33;
		if(isCV) {canvas = document.createElement('canvas');}else if(isVM) {
		canvas = document.createElement(['<var style="zoom:1;overflow:hidden;display:block;width:'+image.width+'px;height:'+image.height+'px;padding:0;">'].join(''));
		}else {canvas = document.createElement('div');}
		canvas.id = image.id+'_canvas';
		classes = image.className.split(' '); 
		r = getClassValue(classes,"iradius");
		o = getClassValue(classes,"iopacity");
		b = getClassRGBColor(classes,"iborder",'0000ff');
		c = getClassRGBColor(classes,"icolor",'000000');
		n = getClassAttribute(classes,"noborder");
		f = getClassAttribute(classes,"nofade");
		d = getClassAttribute(classes,"showcoords");
		o = o==0?0.33:o/100; r = parseInt(Math.min(Math.min(image.width/4,image.height/4),r));
		newClasses = getClasses(classes,"mapper");
		image.className = newClasses;
		mname = image.useMap.split("#"); mname = mname[1];
		mapid = document.getElementsByName(mname);
		if(mapid.length>0) {	
			for(j=0;j<mapid[0].areas.length;j++) {
				if(mapid[0].areas[j].shape.match(/(rect|poly|circle)/i)) {
					if(window.opera||mapid[0].areas[j].coords!='') {
						if(mapid[0].areas[j].id=='') {mapid[0].areas[j].id = mname+'_'+j;}
						if(isVM||isIE) {
							func = mapid[0].areas[j].onmouseover; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
							mapid[0].areas[j].onmouseover = new Function('setAreaOver(this,"'+canvas.id+'","'+b+'","'+c+'","'+o+'",'+n+','+f+','+i+');'+func); 
							func = mapid[0].areas[j].onmouseout; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
							mapid[0].areas[j].onmouseout = new Function('setAreaOut(this,"'+canvas.id+'",'+f+','+i+');'+func); 
						}else {
							func = mapid[0].areas[j].getAttribute("onmouseover"); mapid[0].areas[j].setAttribute("onmouseover","setAreaOver(this,'"+canvas.id+"','"+b+"','"+c+"','"+o+"',"+n+","+f+","+i+");"+func); 
							func = mapid[0].areas[j].getAttribute("onmouseout"); mapid[0].areas[j].setAttribute("onmouseout","setAreaOut(this,'"+canvas.id+"',"+f+","+i+");"+func); 
						}
					}
				}
			}
		}
		canvas.style.height = image.height+'px';
		canvas.style.width = image.width+'px';
		canvas.height = image.height;
		canvas.width = image.width;
		canvas.left = 0; canvas.top = 0;
		canvas.style.position = 'absolute';
		canvas.style.left = 0+'px';
		canvas.style.top = 0+'px';
		canvas.fading = 0;
		image.className = '';
		image.style.cssText = '';
		image.left = 0; image.top = 0;
		image.style.position = 'absolute';
		image.style.height = image.height+'px';
		image.style.width = image.width+'px';
		image.style.left = 0+'px';
		image.style.top = 0+'px';
		image.style.MozUserSelect = "none";
		image.style.KhtmlUserSelect = "none"; 
		image.unselectable = "on";
		if(isIE) {image.style.filter = "Alpha(opacity=0)";
		}else {image.style.opacity = 0;
  		image.style.MozOpacity = 0;
  		image.style.KhtmlOpacity = 0;}
		if(isCV && r>0) {bgrnd = document.createElement('canvas');}else if(isVM && r>0) {
		bgrnd = document.createElement(['<var style="zoom:1;overflow:hidden;display:block;width:'+image.width+'px;height:'+image.height+'px;padding:0;">'].join(''));
		}else {bgrnd = document.createElement('img'); bgrnd.src = image.src;}
		bgrnd.id = image.id+'_image';
		bgrnd.left = 0; bgrnd.top = 0;
		bgrnd.style.position = 'absolute';
		bgrnd.style.height = image.height+'px';
		bgrnd.style.width = image.width+'px';
		bgrnd.style.left = 0+'px';
		bgrnd.style.top = 0+'px';
		object.insertBefore(canvas,image);
		blind = document.createElement('div');
		blind.id = mname+'_blind';
		blind.className = "blind_area";
		blind.left = 0; blind.top = 0;
		blind.style.position = 'absolute';
		blind.style.height = image.height+'px';
		blind.style.width = image.width+'px';
		blind.style.left = 0+'px';
		blind.style.top = 0+'px';
		blind.innerHTML = " ";
		object.insertBefore(blind,image);
		if(isCV) {
			context = canvas.getContext("2d");
			context.clearRect(0,0,canvas.width,canvas.height);
		}else if(!isVM && !isCV) {if(isIE) {
			canvas.style.filter = "Alpha(opacity="+(o*100)+")";
			}else { canvas.style.opacity = o;
  			canvas.style.MozOpacity = o;
  			canvas.style.KhtmlOpacity = o;}
			if(typeof(window['jsGraphics']) !== 'undefined') {
				jg[i] = new jsGraphics(canvas); isJG = 1;
			}
		}		
		object.insertBefore(bgrnd,canvas);
		if(isCV && r>0) {
			bgrnd.height = image.height; bgrnd.width = image.width;
			context = bgrnd.getContext("2d");
			context.clearRect(0,0,bgrnd.width,bgrnd.height);
			roundedRect(context,0,0,bgrnd.width,bgrnd.height,r);
			context.clip();
			context.fillStyle = 'rgba(0,0,0,0)';
			context.fillRect(0,0,bgrnd.width,bgrnd.height);
			context.drawImage(image,0,0,bgrnd.width,bgrnd.height);
		}else if(isVM && r>0) {
			bgrnd.height = image.height; bgrnd.width = image.width; r = getRadius(r,bgrnd.width,bgrnd.height);		
			bgrnd.innerHTML = '<v:roundrect arcsize="'+r+'" strokeweight="0" filled="t" stroked="f" fillcolor="#ffffff" style="zoom:1;margin:0;padding:0;display:block;position:absolute;left:0px;top:0px;width:'+bgrnd.width+'px;height:'+bgrnd.height+'px;"><v:fill src="'+image.src+'" type="frame" /></v:roundrect>';
		}		
		if(d>0) {
			ele = document.getElementById(image.id);
			w = parseInt(image.width); h = parseInt(image.height);
			t = findPosXY(ele); x = t.x; y = t.y;
			ph = document.body.scrollHeight; pw = document.body.scrollWidth;
			if(isVM||isIE) {
				func = image.onmousemove; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
				image.onmousemove = new Function('getCoords(event,"'+mname+'",0,"'+image.id+'",'+x+','+y+','+w+','+h+','+pw+','+ph+');'+func); 
			}else {
				func = image.getAttribute("onmousemove"); 
				image.setAttribute("onmousemove","getCoords(event,'"+mname+"',0,'"+image.id+"',"+x+","+y+","+w+","+h+","+pw+","+ph+");"+func); 
			}
			if(mapid.length>0) {
				for(j=0;j<mapid[0].areas.length;j++) {
					if(mapid[0].areas[j].shape.match(/(rect|poly|circle)/i)) { 
						if(window.opera||mapid[0].areas[j].coords!='') {
							atr = mapid[0].areas[j].id;
							if(isVM||isIE) {
								func = mapid[0].areas[j].onmousemove; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
								mapid[0].areas[j].onmousemove = new Function('getCoords(event,"'+mname+'","'+atr+'","'+image.id+'",'+x+','+y+','+w+','+h+','+pw+','+ph+');'+func); 
							}else {
								func = mapid[0].areas[j].getAttribute("onmousemove"); 
								mapid[0].areas[j].setAttribute("onmousemove","getCoords(event,'"+mname+"','"+atr+"','"+image.id+"',"+x+","+y+","+w+","+h+","+pw+","+ph+");"+func); 
							}
						}
					}
				}
			}
		}
	}
}

var mapperOnload = window.onload;
window.onload = function () { if(mapperOnload) mapperOnload(); addMapper(); }
 
Hi,

setze die Events onmouseover und onmouseout in die area-Tags.
Code:
<a href="#"><area onmouseout="hideTooltip();" onmouseover="initTooltip('t_1');" shape="poly" alt="Glacis" id="Glacis" title="Glacis" coords="434,403,347,434,233,477,111,477,153,382,160,398,176,406,195,407,511,313,530,322,550,323,576,319,594,307,595,294,554,155,567,147,570,133,563,123,543,116,519,113,508,114,329,49,304,48,292,51,288,53,282,59,58,79,45,72,75,61,245,48,264,40,291,34,313,32,334,35,354,40,512,93,543,92,567,96,596,107,616,118,630,132,637,148,634,170,623,179,663,303,665,326,652,350,632,366,605,377,576,382,548,381,527,380,512,375,479,388" href="#" /></a>

Ausserdem fehlt ein öffnendes Anführungszeichen beim width-Attribut:
Code:
<img class="mapper iborder00aa00 icolor00ff00" src="../../../root/img/Grundriss_3D_klein.jpg" usemap="#Grundriss" border="0" width="680" height="482" alt="" />

Zuletzt bleibt noch anzumerken, dass die acht Links nicht korrekt geschlossen werden:
Code:
<a href="#" onmouseout="hideTooltip();" onmouseover="initTooltip('t_21');"><area shape="poly" alt="Geschützstellung 6" id="Geschützstellung 6" title="Geschützstellung 6" coords="415,196,416,197,435,198,435,212,415,214,416,197" href="#"< /></a>

Ciao
Quaese
 
Hab jetzt mal so geändert wie du geschrieben hast. Und noch leicht angepasst, somit funktioniert es nun unter dem Firefox und dem Safari perfekt.

Aber leider geht jetzt unter dem IE das highlighting nicht mehr. Krieg nur einen Fehler ausgespuckt.

Details zum Fehler auf der Webseite

Benutzer-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)
Zeitstempel: Mon, 12 Oct 2009 11:11:19 UTC


Meldung: '}' erwartet
Zeile: 250
Zeichen: 8
Code: 0
URI: http://www.forthahneberg.de/cms/templates/sketch/mapper.js

der neue Quelltext:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
	"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Grundriss</title>



	<script type="text/javascript" src="mapper.js"></script>

	<script src="toolTip.js" language="javascript" type="text/javascript"></script>
	<link href="tooltip.css" rel="Stylesheet" type="text/css" media="screen" />

</head>
<body bgcolor="#FAFAC8"><div class="tooltipsammlung">

<div class="tooltip" id="t_1"><b>Glacis</b><p>Beim Glacis handelt es sich um eine künstliche Geländeaufschüttung außerhalb des Forts mit vorgeschriebenem Gefälle, frei von jeglichen Geländeunebenheiten. somit sollte es einen Angreifer unmöglich gemacht werden, im nächsten Umfeld des Forts Deckung zu finden. Im Kriegsfalle hätte man auf dem Glacis einen Drahtverhau als zusätzliches Annäherungshindernis angelegt</p></div>
<div class="tooltip" id="t_2"><b>Äußeres Festungstor</b><p>Sicherte im Verbund mit dem inneren Festungstor den Hohlweg als einzigen Zugang zum Fort. Die beiden je eine halbe tonne schweren Torflügel sowie die Torpfeiler wurden 2005 originalgetreu rekonstruiert. Das Original wurde nach 1945 beseitigt. Das Tor war schusssicher gegen Handfeuerwaffen.</p></div>
<div class="tooltip" id="t_3"><b>Kehlblockhaus</b><p>Es diente zur Verteidigung des Eingangsbereichs mittels Handfeuerwaffen und als Unterkunft für einen Teil der wachhabenden Mannschaften. Ab 1934 nahm es die Pumpstation für die Abwasserentsorgung des Forts auf.</p></div>
<div class="tooltip" id="t_4"><b>Kehlgrabenwehr</b><p>Dieses Bauwerk diente zur Beschießung des linken und rechten Kehlgrabens und somit der ganzen Eingangsseite des Forts mittels 4 Geschützen vom Kaliber 8cm, welche kartätschen (vergleichbar mit Schrotladungen) verschossen. Ab 1934 diente sie als Offizierskasino und wurde stark umgebaut.</p></div>
<div class="tooltip" id="t_5"><b>Pferdeställe</b><p>Ursprünglich dienten 5 bögen der äußeren grabenwand zur Aufnahme von 6 Reitpferden für Offiziere, nebst Sätteln und Futter. Ab 1934 wurden die Stallungen massiv in den Grabenbereich hinein erweitert.</p></div>
<div class="tooltip" id="t_6"><b>Linker Innenhof</b><p>Von den Innenhöfen führen Geschützrampen hinauf zum Oberwall mit seinen Geschützstellungen. Desweiteren gehen die rückwärtigen Ausgänge der Kehlkaserne, die belüftungsröhren der Kriegspulvermagazine sowie die Zugangstunnel zu den schultergrabenwehren von den Höfen ab. Nach 1934 wurden die Höfe durch die deutsche Wehrmacht mit doppelstöckigen Baracken verbaut, welche im 2. Weltkrieg als einzige Objekte im fort bei Luftangriffen zerstört wurden.</p></div>
<div class="tooltip" id="t_7"><b>Rechter Innenhof</b><p>Von den Innenhöfen führen Geschützrampen hinauf zum Oberwall mit seinen Geschützstellungen. Desweiteren gehen die rückwärtigen Ausgänge der Kehlkaserne, die belüftungsröhren der Kriegspulvermagazine sowie die Zugangstunnel zu den schultergrabenwehren von den Höfen ab. Nach 1934 wurden die Höfe durch die deutsche Wehrmacht mit doppelstöckigen Baracken verbaut, welche im 2. Weltkrieg als einzige Objekte im fort bei Luftangriffen zerstört wurden.</p></div>
<div class="tooltip" id="t_8"><b>Anschlussbatterie</b><p>In den späteren Stadien einer förmlichen Belagerung hätte man die fernkampfgeschütze des Forts aus selbigen entfernt und in aufgelockerter und getarnter Aufstellung neben dem fort in Stellung gebracht. Zur Munitionsversorgung wurde ein doppelstöckiger bau neben dem fort errichtet, dessen Untergeschoss über einen Tunnel vom graben aus zugänglich waren. Mittels einer Geschosshebevorrichtung wäre Munition in das Obergeschoss gekurbelt worden, von wo aus der Weitertransport an die einzelnen Geschütze erfolgte.</p></div>
<div class="tooltip" id="t_9"><b>Linker Schultergrabenwehr</b><p>Sie dienten dem Beschuss der Flankengräben mittels Gewehren und somit der Sicherung der Seiten des Forts.</p></div>
<div class="tooltip" id="t_10"><b>Rechte Schultergrabenwehr</b><p>Sie dienten dem Beschuss der Flankengräben mittels Gewehren und somit der Sicherung der Seiten des Forts.</p></div>
<div class="tooltip" id="t_11"><b>Spitzgrabenwehr</b><p>Analog zur kehlgrabenwehr diente sie zum Beschuss von zwei grabenabschnitten mittels Geschützen vom Kaliber 8cm. 1892 wurde in dieser grabenwehr ein vergleichsschießen zwischen den genannten 8 cm- und modernen 3,7cm Revolverkanonen der Firma Hotchkiss durchgeführt. Die Grabenwehr wurde nach Kriegsende weitestgehend zerstört.</p></div>
<div class="tooltip" id="t_12"><b>Kehlkaserne</b><p>Sie diente als Unterkunft der etwa 400 – 450 Mann der fort Besetzung. Desweiteren barg sie die Küche sowie die proviantlagerräume.</p></div>
<div class="tooltip" id="t_13"><b>Kehlreduit</b><p>Diente als letzte Verteidigungsstellung des Forts. Von dort aus ließen sich der eingangsbereich sowie das Innenleben des Forts unter Gewehrfeuer nehmen. Es wurde erst nach Umbau des Forts zum Sperrfort in die Planungen und schon laufenden Arbeiten integriert.</p></div>
<div class="tooltip" id="t_14"><b>Kapitaltraverse</b><p>Dieser Erdwall trennt das fort in zwei fast spiegelgleiche hälften. In ihm befinden sich der Hauptverbindungsgang sowie die beiden Kriegspulvermagazine.</p></div>
<div class="tooltip" id="t_15"><b>Inneres Festungstor</b><p>Es riegelte im Verbund mit dem äußeren Festungstor die Zufahrt zum Fort ab. Beim Umbau des Fort Hahneberg vom Gürtelfort zum Sperrfort, während der Bauphase, wurde es nachträglich erhöht.</p></div>
<div class="tooltip" id="t_16"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_17"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_18"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_19"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_20"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>
<div class="tooltip" id="t_21"><b>Geschützstellungen</b><p>Als Bestandteil es Oberwalles stellen sie die Fernverteidigung des Forts dar. In ihnen standen Geschütze vom Kaliber 9, 12 und 15cm.</p></div>

</div><div><img class="mapper iborder00aa00 icolor00ff00" src="http://www.tutorials.de/../root/img/Grundriss_3D_klein.jpg" usemap="#Grundriss" border="0" width="680" height="482" alt="" />
</div>
<map name="Grundriss">
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_1');" shape="poly" alt="Glacis" id="Glacis" title="Glacis" coords="434,403,347,434,233,477,111,477,153,382,160,398,176,406,195,407,511,313,530,322,550,323,576,319,594,307,595,294,554,155,567,147,570,133,563,123,543,116,519,113,508,114,329,49,304,48,292,51,288,53,282,59,58,79,45,72,75,61,245,48,264,40,291,34,313,32,334,35,354,40,512,93,543,92,567,96,596,107,616,118,630,132,637,148,634,170,623,179,663,303,665,326,652,350,632,366,605,377,576,382,548,381,527,380,512,375,479,388" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_2');" shape="poly" alt="Haupttor" id="Haupttor" title="Haupttor" coords="64,171,64,171,99,177,98,194,91,202,50,193,64,171,64,171" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_3');" shape="poly" alt="Kehlblockhaus" id="Kehlblockhaus" title="Kehlblockhaus" coords="136,192,137,193,141,199,169,198,169,187,164,178,137,182,136,194" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_4');" shape="poly" alt="Kehlgrabenwehr" id="Kehlgrabenwehr" title="Kehlgrabenwehr" coords="205,161,206,162,183,169,181,179,189,185,216,183,216,173,208,162" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_5');" shape="poly" alt="Pferdeställe" id="Pferdeställe" title="Pferdeställe" coords="176,206,177,206,195,204,194,222,176,222,176,206" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_6');" shape="poly" alt="Linker Innenhof" id="Linker Innenhof" title="Linker Innenhof" coords="257,120,257,120,275,115,282,115,292,117,329,139,294,144,257,121" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_7');" shape="poly" alt="Rechter Innenhof" id="Rechter Innenhof" title="Rechter Innenhof" coords="332,229,333,230,361,229,373,219,372,183,323,187,320,195,336,195,332,229" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_8');" shape="poly" alt="Anschlussbatterie" id="Anschlussbatterie" title="Anschlussbatterie" coords="22,62,23,63,43,56,60,63,43,69,36,75,25,68,24,63" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_9');" shape="poly" alt="Linke Schultergrabenwehr" id="Linke Schultergrabenwehr" title="Linke Schultergrabenwehr" coords="304,76,304,76,327,73,314,64,309,65,311,68,302,70,304,76" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_10');" shape="poly" alt="Rechte Schultergrabenwehr" id="Rechte Schultergrabenwehr" title="Rechte Schultergrabenwehr" coords="508,305,508,302,509,293,499,285,547,273,552,276,556,299,556,313,549,317,538,312,525,304,508,307,508,292" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_11');" shape="poly" alt="Spitzgrabenwehr" id="Spitzgrabenwehr" title="Spitzgrabenwehr" coords="540,155,539,155,519,154,514,137,505,133,524,129,536,133,539,143,541,154" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_12');" shape="poly" alt="Kehlkaserne" id="Kehlkaserne" title="Kehlkaserne" coords="160,149,161,150,162,132,170,127,191,125,231,143,242,154,261,181,254,219,250,254,223,252,222,238,229,201,216,184,216,170,207,160,193,166,161,150,161,132,170,128" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_13');" shape="poly" alt="Kehlreduit" id="Kehlreduit" title="Kehlreduit" coords="233,142,234,143,247,141,262,147,247,152,262,170,277,166,282,174,279,185,264,188,261,176,235,144" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_14');" shape="poly" alt="Kapitaltraverse" id="Kapitaltraverse" title="Kapitaltraverse" coords="378,153,379,154,302,164,279,159,275,167,262,170,262,161,254,150,363,137,371,140,380,150,378,154" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_15');" shape="circle" alt="Innentor" id="Innentor" title="Innentor" coords="172,201,8" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_16');" shape="poly" alt="Geschützstellung 1" id="Geschützstellung 1" title="Geschützstellung 1" coords="322,98,323,99,333,97,340,100,330,104,323,100" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_17');" shape="poly" alt="Geschützstellung 2" id="Geschützstellung 2" title="Geschützstellung 2" coords="353,110,354,111,363,116,374,114,363,109,355,110" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_18');" shape="poly" alt="Geschützstellung 3" id="Geschützstellung 3" title="Geschützstellung 3" coords="388,128,392,126,398,125,400,130,384,133,382,128" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_19');" shape="poly" alt="Geschützstellung 4" id="Geschützstellung 4" title="Geschützstellung 4" coords="399,147,400,148,406,154,425,150,416,144,400,146" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_20');" shape="poly" alt="Geschützstellung 5" id="Geschützstellung 5" title="Geschützstellung 5" coords="432,167,433,168,432,180,416,181,414,169,431,166" href="#" />
 <area onmouseout="hideTooltip();" onmouseover="initTooltip('t_21');" shape="poly" alt="Geschützstellung 6" id="Geschützstellung 6" title="Geschützstellung 6" coords="415,196,416,197,435,198,435,212,415,214,416,197" href="#" />

</map>



<div id="tooltipMouseover" class="tooltipMouseover"></div>
</body>
</html>


Noch ne Idee?
 
Zuletzt bearbeitet:
Hi,

aus irgendeinem Grund dichtet sich der IE 8 eine öffnende Klammer dazu. Als Lösung käme eine try-catch-Anweisung in Frage, die den Fehler abfängt.

Suche in der mapper.js nach (die fette Zeile ist der Übeltäter)
Code:
if(isVM||isIE) {
  func = mapid[0].areas[j].onmouseover; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
  mapid[0].areas[j].onmouseover = new Function('setAreaOver(this,"'+canvas.id+'","'+b+'","'+c+'","'+o+'",'+n+','+f+','+i+');'+func); 
  func = mapid[0].areas[j].onmouseout; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
  mapid[0].areas[j].onmouseout = new Function('setAreaOut(this,"'+canvas.id+'",'+f+','+i+');'+func); 
}else {
  func = mapid[0].areas[j].getAttribute("onmouseover"); mapid[0].areas[j].setAttribute("onmouseover","setAreaOver(this,'"+canvas.id+"','"+b+"','"+c+"','"+o+"',"+n+","+f+","+i+");"+func); 
  func = mapid[0].areas[j].getAttribute("onmouseout"); mapid[0].areas[j].setAttribute("onmouseout","setAreaOut(this,'"+canvas.id+"',"+f+","+i+");"+func); 
}
und ersetze es durch
Code:
if(isVM||isIE) {
  func = mapid[0].areas[j].onmouseover; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}

  try{
    mapid[0].areas[j].onmouseover = new Function('setAreaOver(this,"'+canvas.id+'","'+b+'","'+c+'","'+o+'",'+n+','+f+','+i+');'+func);
  }catch(objExc){
    if(objExc.message.search(/}/) != -1)
      mapid[0].areas[j].onmouseover = new Function('setAreaOver(this,"'+canvas.id+'","'+b+'","'+c+'","'+o+'",'+n+','+f+','+i+');'+func+"}");
  }

  func = mapid[0].areas[j].onmouseout; if(func!=null) {tmp=String(func); func=tmp.substr(23,tmp.length-25);}
  mapid[0].areas[j].onmouseout = new Function('setAreaOut(this,"'+canvas.id+'",'+f+','+i+');'+func); 
}else {
  func = mapid[0].areas[j].getAttribute("onmouseover"); mapid[0].areas[j].setAttribute("onmouseover","setAreaOver(this,'"+canvas.id+"','"+b+"','"+c+"','"+o+"',"+n+","+f+","+i+");"+func); 
  func = mapid[0].areas[j].getAttribute("onmouseout"); mapid[0].areas[j].setAttribute("onmouseout","setAreaOut(this,'"+canvas.id+"',"+f+","+i+");"+func); 
}

Ciao
Quaese
 

Neue Beiträge

Zurück