Die folgende jQuery funktioniert in Firefox für mich, aber nicht in IE6:jquery name-Attribut Kartenelement in IE
$("<map></map>").attr("name",somevar).appendTo("#someElement");
Das Problem ist, dass das Kartenelement nie das Attribut name wird erzeugt, die ich beweisen kann, von alert($("#someElement").html());
und die Tatsache, fordern, dass das Bild, um es mit nicht seine Verbindungen zugeordnet ist, hat
Wenn ich diese stattdessen verwenden, es funktioniert gut:
$("<map name='" + somevar + "'></map>").appendTo("#someElement");
ich bin h appy die zweite Zeile des Codes zu verwenden, aber fragte sich, ob jemand anderes dieses Problem hatte ... oder eine Erklärung, warum es nicht funktioniert hat (ich frage mich, dass es spezifisch für das Attribut name ist) ...
(HTML Ausgabe von ersten und zweiten Szenario):
IE6 die erste Zeile unter Verwendung von:
<MAP><AREA shape=RECT coords=0,0,300,110 href="http://google.com"></MAP><IMG height=215 src="include/nav-images/main.png" width=591 useMap=#tehmap>
IE6 unter Verwendung der zweiten Zeile:
<MAP name=tehmap><AREA shape=RECT coords=0,0,300,110 href="http://google.com"></MAP><IMG height=215 src="include/nav-images/main.png" width=591 useMap=#tehmap>
Sie denken, es ist nur so, dass z. B. Karten nicht wirklich erhalten? –
Ich denke, Ihre Analyse ist sowohl gründlich als auch provokativ, was die Frage aufwirft, warum jemand so klar in Gedanken und Vernunft ist und ein Nicht-Formelement-Attribut "Name" nennt. Name ist der unbrauchbarste Attributname, den Sie möglicherweise festlegen könnten: a) Er bezieht sich auf zu viel, Elemente sind Elemente und ihre Namen werden als Tags deklariert. b). name ist eine besondere Eigenschaft von Formularelementen, die für die Formularübergabe verwendet werden. c) id ist der perfekte Ersatz für das, was Sie versuchen zu tun, es sei denn, der Name ist nicht eindeutig, in diesem Fall ist es sowieso kein sehr guter Name für das Attribut. +1 für einen guten Fehler finden. – Gabriel