Ergebnis 1 bis 15 von 87
-
02-07-2010, 04:27 #1
Eroberer
- registriert
- 30-06-2009
- Beiträge
- 53
image map über xml festlegen und animieren
Hallo,
ich würde gerne Daten aus eienr XML-Datei auslesen und anhand deren eine HTML-Image-Map erstellen.
Wenn ich jetzt über einen aktiven Bereich der ImageMap fahre, möchte ich die ID dieses Bereichs und seine Koordinaten weiterverwenden.
Im Endeffekt möchte ich damit eine Weltkarte erstellen, die beim Hovern animiert wird wie z.B. www.boralex.com/en/sites .
Als JS-Neuling schaffe ich das aber nicht wie gewünscht
in der HTML-Datei habe ich folgendes stehen:
HTML-Code:<img src="gfx/worldmap/worldmap_blank.gif" class="worldmap" border="0" alt="" usemap="#worldmapmap" /> <map name="worldmapmap"> <area shape="rect" id="bereich1" coords="11,10,59,29" href="#" alt="linkname" title="linktitel"> </map>
HTML-Code:$(document).ready(function(){ for (var i=1; i<5; i++){ var el = document.getElementById('bereich'+i); el.index = i; el.onMouseOver = function(){ alert("test"); /* bzw. die x/y-koordinaten diesses objekts. diese kann ich allerdings auch als variabeln darin speichern, da sie eh per js festgelegt werden sollen */ }; } });
Die FF-Fehlerkonsole schmeißt mir aus, dass $ nicht definiert ist.
Die Schleife habe ich kopiert von: http://forum.jswelt.de/javascript/49...nsprechen.html (DIVs und H1 mit FOR-Schleife ansprechen), aber ich steig noch nicht ganz dahinter, wie ich sie zum Funktionieren verändern muss
-
02-07-2010, 08:40 #2
Foren-Gott
- registriert
- 19-05-2008
- Beiträge
- 5.667
-
02-07-2010, 11:51 #3
Foren As
- registriert
- 17-06-2010
- Beiträge
- 88
AW: image map über xml festlegen und animieren
oder du nimmst window.onload() anstatt $(document).ready(
-
02-07-2010, 12:13 #4
Eroberer
- registriert
- 30-06-2009
- Beiträge
- 53
AW: image map über xml festlegen und animieren
ah, okay, ich hatte mich nämlich schon nach $ dummgesucht und nichts gefunden. Dann wird das wohl zu jQuery gehören, was ich bei der anderen Sache verwendet hatte...Dann bin deich das ejtzt auch ein (das brauch ich später für die Animation) und probier es nochmal. Danke
-
02-07-2010, 12:15 #5
Foren As
- registriert
- 17-06-2010
- Beiträge
- 88
-
02-07-2010, 12:28 #6
Eroberer
- registriert
- 30-06-2009
- Beiträge
- 53
AW: image map über xml festlegen und animieren
so, jetzt ist $ definiert. allerdings bekomme ich nun gesagt, dass "el" = "null" ist...
$(document).ready(function(){
for (var i=1; i<5; i++){
var el = document.getElementById('bereich'+i);
el.index = i;
el.onMouseOver = function(){
alert("test");
};
}
});<img src="gfx/worldmap/worldmap_blank.gif" class="worldmap" border="0" alt="" usemap="#worldmapmap" />
<map name="worldmapmap">
<area shape="rect" id="bereich1" coords="11,10,59,29" href="#" alt="linkname" title="linktitel">
</map>
Edit: ah, okay, jetzt gehts, hiermit:
$(document).ready(function(){
for (var i=1; i<=200; i++){
var el = document.getElementById('bereich'+i);
el.index = i;
el.onmouseover = function(){
alert(this.id);
};
}
})Geändert von cysign (02-07-2010 um 13:51 Uhr)
-
02-07-2010, 13:45 #7
Foren As
- registriert
- 17-06-2010
- Beiträge
- 88
AW: image map über xml festlegen und animieren
dann gibt es das element mit dieser ID wohl nicht.
kleiner Tipp: Wenn du jQuery schon nutzt, dann benutz auch die Selektoren.
Dein Problem würde ich so lösen:
gib allen Bereichen die du ansprechen willst die klasse "bereich"
Code:$(document).ready(function(){ $(".bereich").onMouseOver = function(){ alert("test"); }; });
-
02-07-2010, 13:47 #8
-
02-07-2010, 15:58 #9
Eroberer
- registriert
- 30-06-2009
- Beiträge
- 53
AW: image map über xml festlegen und animieren
Sorry, ich bin noch n blutiger Anfänger. Hab mich vor Jahren mal mit Actionscript befasst...und wollte damit jetzt eigentlich arbeiten. Aber dann bin ich zu der Überzeugung gekommen, dass JS die bessere Lösung ist, da man keine kostenpflichtige Software braucht und kein optionales Plugin zum Abspielen nötig ist. Da ich kein Streaming nutzen möchte, sehe ich hier keinen Vorteil für Flash.
Der jQuery-Selector spricht also über CSS-Definitionan an? ("." => Klassen & "#" => IDs?)
Code:var el = $("#bereich'+i);
Tuts aber irgendwie nicht.
Ich kann an dieser Stellen nicht mit einer Klasse arbeiten, da jeder Bereich einen anderen Inhalt aufrufen soll...Geändert von cysign (02-07-2010 um 16:11 Uhr)
-
02-07-2010, 17:09 #10
AW: image map über xml festlegen und animieren
@hacho: onmouseover!
@cysign: Fehlermeldungen sollte man trotzdem beachten und entfernen... so gibt es bei dir z.B. kein Element mit id="bereich200", oder?
-
02-07-2010, 17:18 #11
Eroberer
- registriert
- 30-06-2009
- Beiträge
- 53
AW: image map über xml festlegen und animieren
Stimmt, so viele brauch ich dann doch nicht. Aber die Selektoren funktionieren dennoch nicht so, wie ich mir das vorstelle. Auskommentiertes funktioniert, das darunter nicht:
/* var el = document.getElementById('bereich'+i); */
var el = $("#bereich'+i);
-
02-07-2010, 17:25 #12
AW: image map über xml festlegen und animieren
Dann nimm doch das obere - ist sowieso schneller als das von jQuery.
-
04-07-2010, 19:45 #13
Foren As
- registriert
- 17-06-2010
- Beiträge
- 88
AW: image map über xml festlegen und animieren
das mag sein, aber meiner Meinung nach ist es einfach komfortabler eine Selektion über die Klassen zu realisieren.
Wenn du allen gewünschten Elementen die Klasse "bereich" gibst, kannst du alle auf einmal ansprechen, bzw die $(".bereich").each(function(){}); benutzen
-
05-07-2010, 08:04 #14
Foren As
- registriert
- 17-06-2010
- Beiträge
- 88
-
05-07-2010, 16:05 #15
AW: image map über xml festlegen und animieren
unnötiges Speichern in Variablen - $("#bereich"+i)
Aber mit Klassen ist es schöner.
Ähnliche Themen
-
Navigationsleite Animieren
Von new_developer im Forum JavaScriptAntworten: 6Letzter Beitrag: 29-04-2010, 15:23 -
background-image über 100% der höhe
Von rasputin im Forum CSS und (X)HTMLAntworten: 18Letzter Beitrag: 06-01-2007, 22:01 -
background-image über drei Spalten
Von wumble im Forum AllgemeinesAntworten: 4Letzter Beitrag: 22-01-2006, 21:12 -
site über image zur startseite machen
Von Jack-da-Ripper im Forum AllgemeinesAntworten: 1Letzter Beitrag: 20-09-2003, 01:06 -
Tabellenhöhe über background-image definieren
Von bine im Forum AllgemeinesAntworten: 4Letzter Beitrag: 31-08-2003, 22:54
Lesezeichen