php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.03.2010, 01:19  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard [Erledigt] XHTML & image maps <> Opera

Hallo - oder besser - guten Abend (gute Nacht?),

ich beschäftige mich momentan mit einer Aufgabe, bei der ich imagemaps verwenden muss. Bis jetzt habe ich diese immer erfolgreich umgehen können, doch jetzt nicht mehr ()

Meine Seite ist in xhtml 1.1 geschrieben und laut dieser Definition müsste das ganze wie folgt aufgabaut sein, damit es valide ist:

HTML-Code:
<map id="meine_map">
    <area href="foo" shape="poly" 
    coords="14,266,284,26,384,80,112,297,329,507,290,545" 
    alt="bar" title="foobar" />
</map>

<img src="foobar.jpg" alt="foo bar" usemap="meine_map" /> 
Das weicht von der bekannten HTML Syntax ab, die mit name="" arbeitete und bei dessen usemap-Attribut ein "#" vorangestellt war.

Eben hier liegt das Problem. Selbst der Firefox versteht die XHTML 1.1 Syntax nicht korrekt.

Um trotzdem valide 1.1 zu bleiben habe ich nun getrickst und ändere das DOM-Modell mithilfe von Javascript (jQuery) einfach um in den "alten" Stil.

Code:
var maps = $("map")
for(var i = 0; i < maps.length; i++) {
    $(maps[i]).attr('name', $(maps[i]).attr('id'))
}
var imgs = $("img[usemap]")
for(var i = 0; i < imgs.length; i++) {
    $(imgs[i]).attr('usemap', "#"+$(imgs[i]).attr('usemap'))
}
Soweit funktioniert das. Es hapert jedoch im Opera. Der Opera erkennt meine imagemap nicht an. Egal ob ich sie mit Javascript ändere, direkt den XHTML Syntax nehme oder doch den HTML Syntax. Es juckt Opera einfach nicht. Dort wird die imagemap einfach ignoriert.

Hat jemand eine Idee, wie ich das ganze auch in Opera zum Laufen bekomme?

Wer möchte, kann sich das Problem hier noch einmal ansehen: Immobilien Hahnefeld - Einfamilienhaus - #EFH-001 - Grundrisse

Besten Dank und Grüße
Frank Zechert
__________________

Geändert von Frank (21.03.2010 um 01:38 Uhr).
Frank ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.03.2010, 01:58  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard Hat sich erledigt

Entschuldigt die Mühe.

Ich konnte das Problem soeben identifizieren und ausmärzen.
Das Problem: Durch das <base>-Tag hat opera im Javascript für das Attribut usemap den Absoluten Link zurückgegeben. Durch das JS wurde das usemap also zu

Code:
usemap="#http://ih.ch3ck3r.org/objekte/.../meine_map"
anstatt von
Code:
usemap="#meine_map"
Habe das entsprechend mit folgendem JS gelöst:
Code:
$(imgs[i]).attr('usemap', "#"+$(imgs[i]).attr('usemap').split("/")[$(imgs[i]).attr('usemap').split("/").length-1])
__________________
Frank ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
variable mit onclick an php drombusch PHP Tipps 2009 8 30.08.2009 14:45
Bilder Klasse snatch-ic Beitragsarchiv 1 13.06.2007 11:45
Problem mit Wasserzeichen auf Bildern pixelcut PHP-Fortgeschrittene 16 14.12.2004 02:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
opera xhtml, frank zechert, xhtml opera, body onload valide, imagemap nicht valide, imagemap valide, xhtml imagemap, xhtml 1.1 usemap, opera image map, imagemap xhtml, usemap xhtml, &lt &gt, xhtml &amp, javascript split php xhtml, imagemaps xhtml, opera xhtml problem, opera zeigt image map nicht, html img &gt, xhtml &amp php, xhtml &lt;

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:25 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum