2013-04-13 7 views
14

Ive eine Image Map erstellt und es funktioniert nicht in Firefox. Es funktioniert gut in Chrome und Safari. DieseImage Map funktioniert nicht in Firefox! funktioniert gut in Chrome + Safari

ist die Website bryanedwardcollins.com

Bitte um Hilfe!

<MAP NAME="menumap" > 
<AREA 
HREF="contact.html" ALT="contact" 
SHAPE="POLY" COORDS="425,100, 572,89, 594,142, 488,150, 460,166, 423,100"> 
    <AREA 
    HREF="insameit.html" ALT="insame i.t." 
    SHAPE="POLY" COORDS="382,239, 462,245, 461,343, 608,344, 610,395, 354,405, 354,341"> 
    <AREA 
    HREF="floorpart.html" ALT="floor part" 
    SHAPE="POLY" COORDS="307,185, 429,185, 430,221, 379,222, 374,235, 283,224"> 
    <AREA 
    HREF="iouse.html" ALT="I O Use" 
    SHAPE="POLY" COORDS="27,18, 231,16, 243,0, 382,0, 253,265, 69,252, 193,73, 27,73"> 
    <AREA 
    HREF="worldpart.html" ALT="world part" 
    SHAPE="POLY" COORDS="25,303, 122,305, 122,448, 27,449"> 
    </MAP> 
+2

Sie haben das gleiche Problem wie dieser Asker. Ihr '' Tag benötigt ein Rautenzeichen:' 'http://StackOverflow.com/Questions/8479798/Having-Image-Map-Problems-in-firefox –

Antwort

21

Ich stolperte auch in diese Frage. Es sieht so aus, als würde Chrome das img-Attribut usemap = "mapName" ohne das Symbol # analysieren. Wenn Sie jedoch das Hash-Symbol "#" nicht einfügen, wird die Karte nicht mit dem Bild in FireFox und Internet Explorer verknüpft.

Hier ist der richtige Weg, es zu tun:

<img src="images/header.jpg" id="hdr" name="hdr" usemap="#hdrMap" alt="alt string here" border="0"> 
    <map name="hdrMap" style="cursor:pointer;"> 
     <area shape="rect" coords="720,65,880,0" href="http://www.thisisthefirstlink.com" target="_blank" alt="first link alt"> 
     <area shape="rect" coords="882,65,1024,0" href="http://www.secondlink.com" target="_blank" alt="second link alt"> 
    </map> 

Beachten Sie die usemap = "# hrdMap" hat einen Hash-Tag-Symbol und entspricht dem name = "hdrMap" -Attribut für die Karte-Tag. Dies kann ein wenig verwirrend erscheinen, da viele Leute das # -Symbol mit einem ID-Attribut verknüpfen.

hoffe, das hilft

+1

Es ist dieses Problem, Firefox ist zu verdammt Standard. – IlPADlI

+1

danke dafür, endlich eine Lösung gefunden ... – TheBigDoubleA

3

Ein weiteres <map Problem in Firefox und Lösung dafür - sicherstellen, dass Sie keine Anker mit (<a>) Elemente innerhalb <map>. Wenn <map> irgendwelche <a> Kinder hat, ignoriert Firefox das ganze <map> Element.

Es könnte offensichtlich nicht <a> Elemente zu verwenden, da <area>href Attribut hat, aber zum Beispiel in Ember.js war es mir nützlich, Code so zu schreiben:

<map id='human-image-map' name='human-image' action='showTooltip'> 
    <section class="front" title="Pokaż ćwiczenia"> 
     {{#link-to 'training.shoulders'}} 
     <area alt="Barki" shape="poly" coords="39,74,37,75,35,77,33,78,32,76,32,73,32,71,32,68,33,65,33,63,34,61,36,58,37,56,38,54,40,53,42,52,44,51,46,51,48,51,51,50,55,49,57,48,59,47,61,47,59,50,58,52" /> 
     <area alt="Barki" shape="poly" coords="112,74,114,75,117,77,119,79,121,77,121,74,121,71,121,68,119,65,117,62,116,59,113,57,111,54,109,53,106,51,103,50,99,49,96,47,93,46,90,45,90,48,92,50,93,52,95,54,97,56,99,59,101,62,103,65,106,68" /> 
     {{/link-to}} 
    </section> 
</map> 

ich kann‘ t Spezifizieren Sie href Attribut manuell, es gilt als Best Practice, dies zu link-to Helper zu verlassen.

Lösung für meine spezifische Ember.js Problem war nur mit einem anderen Tag anstelle von <a>. Also, das Hinzufügen tagName='span'-link-to Helfer gelöst mein Problem:

{{#link-to 'training.shoulders' tagName='span'}} 
    <!-- ... --> 
{{/link-to}} 

Hinweis: In Chrome <a> Elemente innerhalb <map> gut funktionieren.