HighDots Forums  

IE7 und innerHTML

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss IE7 und innerHTML in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Markus Bemmelen
 
Posts: n/a

Default IE7 und innerHTML - 03-23-2007 , 04:51 AM






Hallo, werte Gemeinde!
Ich habe ein Problem bei der Erstellung einer Webseite, das ich leider
bisher nicht lösen konnte.
Per AJAX-Request lade ich Daten auf einer Seite nach. Die Daten kommen
einwandfrei an, kann sie auch verarbeiten, d.h. Zuweisung an
INPUT-Felder funktioniert.
Jetzt habe ich ein Flag, das bestimmt, ob eine Grafik eingebunden wird
oder nicht. Die Darstellung erfolgt in einem IMG-Tag mit fester ID
innerhalb eines FIELDSET. Per document.getElementById(meineID).src soll
nun 'nur' die Quelle der Grafik geändert werden. Funktioniert soweit
auch wunderbar unter FF2 und Opera. Beim IE7 wird nach der Zuweisung die
komplette Seite im Browser gelöscht, will meinen: alle Elemente
verschwinden.
Habe mir mittels WebDeveloperToolbar den Quelltext angeschaut: er ist
vorhanden, selbst die Zuweisung an das IMG-tag hat geklappt.

Handelt es sich dabei um einen Bug im IE oder habe ich irgendwo einen
Denkfehler, der mir bisher entgangen ist?

Gruß, Markus

Reply With Quote
  #2  
Old   
Oliver Block
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-23-2007 , 06:56 AM






Markus Bemmelen wrote:

Quote:
Handelt es sich dabei um einen Bug im IE oder habe ich irgendwo einen
Denkfehler, der mir bisher entgangen ist?
Ein Bischen Code vielleicht?

Gruß,

Oliver



Reply With Quote
  #3  
Old   
Markus Bemmelen
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-23-2007 , 08:00 AM



Oliver Block schrieb:
Quote:
Ein Bischen Code vielleicht?
weil du es bist:

<fieldset><img id="meineID" src="brabbel.gif" /></fieldset>

Ich möchte jetzt den Wert des src-Attributs verändern:

document.getElementById('meineID').src = 'blubbel.gif';

Nach dieser Zuweisung verschwinden, wie bereits im ersten Posting
erwähnt, _alle_ Elemente im Browserfenster.

Gruß, Markus


Reply With Quote
  #4  
Old   
J. Strübig
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-23-2007 , 08:20 AM



Markus Bemmelen schrieb:
Quote:
Oliver Block schrieb:
Ein Bischen Code vielleicht?

weil du es bist:

fieldset><img id="meineID" src="brabbel.gif" /></fieldset

Ich möchte jetzt den Wert des src-Attributs verändern:

document.getElementById('meineID').src = 'blubbel.gif';

Nach dieser Zuweisung verschwinden, wie bereits im ersten Posting
erwähnt, _alle_ Elemente im Browserfenster.
Also bei mir nicht, da wird einfach nur das Bild ausgetauscht. Hast du
mal eine Testseite wo man dieses Phänomen beobachten kann?

Struppi.


Reply With Quote
  #5  
Old   
Markus Bemmelen
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-23-2007 , 08:37 AM



J. Strübig schrieb:
Quote:
Also bei mir nicht, da wird einfach nur das Bild ausgetauscht. Hast du
mal eine Testseite wo man dieses Phänomen beobachten kann?

Leider nicht online, nur zu Hause lokal. Werde ich heute Abend mal
online stellen ...

Gruß, Markus


Reply With Quote
  #6  
Old   
Oliver Block
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-23-2007 , 01:23 PM



Markus Bemmelen wrote:
Quote:
weil du es bist:
Danke für Deine Mitarbeit.:-)

Quote:
fieldset><img id="meineID" src="brabbel.gif" /></fieldset

Ich möchte jetzt den Wert des src-Attributs verändern:

document.getElementById('meineID').src = 'blubbel.gif';

Nach dieser Zuweisung verschwinden, wie bereits im ersten Posting
erwähnt, _alle_ Elemente im Browserfenster.
Der Browser rendert offenbar nicht vollständig. Du schreibtst oben

var img = new Image();
img.onload = function() { document.getElementById('meineID').src =
img.src };
img.src = 'blubbel.gif';

_irgendwas_ gegen den event austauschen, der ausgelöst wird, wenn das Bild
vollständig geladen wurde.

Zusatzbemerkung 1: Die Bilder müssen/sollten die gleiche Größe haben.

Zusatzbemerkung 2: Im Betreff steht innerHTML. Kann es sein, dass Du
wichtigen Code nicht geschrieben hast? Falls es immer noch nicht
funktioniert schau noch mal nach.

Gruß,

Oliver




Reply With Quote
  #7  
Old   
Markus Bemmelen
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-26-2007 , 02:41 AM



Moin moin!
Sorry erstmal für das Nichteinhalten meines Versprechens, den
entsprechenden Code online zu stellen: mein ISP hat sich am Wochenende
die Freiheit genommen, selber eine Auszeit zu nehmen :-(

Oliver Block schrieb:
Quote:
var img = new Image();
img.onload = function() { document.getElementById('meineID').src =
img.src };
img.src = 'blubbel.gif';
Nicht ganz so, eher gebe ich per HTML eine Default-Grafik vor (siehe
Posting vorher)

Quote:
Zusatzbemerkung 1: Die Bilder müssen/sollten die gleiche Größe haben.
Haben sie!

Quote:
Zusatzbemerkung 2: Im Betreff steht innerHTML. Kann es sein, dass Du
wichtigen Code nicht geschrieben hast? Falls es immer noch nicht
funktioniert schau noch mal nach.
Nein, habe meinen kompletten Code gepostet: innerhalb des FIELDSET steht
wirklich nur ein vollständiges IMG-Tag.
Durch Ausprobieren ist mir jetzt aber auch aufgefallen, dass sich der
IE7 wohl an jegliche Art der Veränderung meiner Seite stört, alerdings
nur auch DOM bezogen. Wenn ich das IMG-Tag beispielsweise normalen Text
Text erstzen will, tritt ein identischen Verhalten auf. Updates von
VALUE-Attributen in INPUT-Tag lässt ihn aber kalt und führt er
einwandfrei aus ...
Na ja, egal, muss ich mir halt ein anderes Layout ausdenken ...

Danke an alle, die mir haben helfen wollen,


Gruß, Markus


Reply With Quote
  #8  
Old   
Martin Honnen
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-26-2007 , 07:19 AM



Markus Bemmelen wrote:

Quote:
Durch Ausprobieren ist mir jetzt aber auch aufgefallen, dass sich der
IE7 wohl an jegliche Art der Veränderung meiner Seite stört, alerdings
nur auch DOM bezogen.
Wo genau wird die Anweisung
document.getElementById('meineID').src = 'blubbel.gif';
benutzt, etwa in einem
<a href="javascript: document.getElementById('meineID').src =
'blubbel.gif';">link</a>

--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #9  
Old   
Markus Bemmelen
 
Posts: n/a

Default Re: IE7 und innerHTML - 03-26-2007 , 07:40 AM



Martin Honnen schrieb:
Quote:
Wo genau wird die Anweisung
document.getElementById('meineID').src = 'blubbel.gif';
benutzt, etwa in einem
a href="javascript: document.getElementById('meineID').src =
'blubbel.gif';">link</a

Nein, ich habe eine SELECT-Box, die bei einem ONCHANGE einen
Ajax-Request auslöst. Es wird XML zurückgeliefert. Das XML parse ich und
die gefundenen Werte werden dann auf der Seite gegen vorhandene
ausgetauscht. Wie gesagt, bei den VALUEs der INPUT-Tags funktioniert das
einwandfrei. Hier erfolgt die Zuweisung per

document.getElementById('eineAndereId').value = 'irgendwas';

Sobald ich dann (oder auch meinetwegen als erste Aktion) aber versuche,
die Source der Grafik zu verändern, 'löscht' sich die Seite.

Der ganze JS-Code ist übrigens in eine eigene Datei ausgelagert.


Gruß, Markus


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.