djtraumwelt: Internet Explorer will function nicht ausführen

	function ShowSmilies ()  
	{  
		var gsagt = "";  
		gsagt += '<a href="javascript:InsertSmilie(' + "'" + '^^' + "'" + ')";><img src="icon/icon_^^.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':D' + "'" + ')";><img src="icon/icon_biggrin.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':kiss' + "'" + ')";><img src="icon/icon_bussi.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':8' + "'" + ')";><img src="icon/icon_cool.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':datz' + "'" + ')";><img src="icon/icon_datz.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':daumen' + "'" + ')";><img src="icon/icon_daumendreh.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':doh' + "'" + ')";><img src="icon/icon_doh.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':doof' + "'" + ')";><img src="icon/icon_doof.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':jump' + "'" + ')";><img src="icon/icon_jump.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':kaf' + "'" + ')";><img src="icon/icon_kaffee6.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':motz' + "'" + ')";><img src="icon/icon_motz.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':skate' + "'" + ')";><img src="icon/icon_mttao_fingerflip.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':(' + "'" + ')";><img src="icon/icon_nosmile.gif" border="0"></a>';  
		gsagt += ' <a href="javascript:InsertSmilie(' + "'" + ':)' + "'" + ')";><img src="icon/icon_smile.gif" border="0"></a>';  
		document.getElementById("smile").innerHTML = gsagt;  
	}  
	  
	function InsertSmilie (param)  
	{  
		document.chat.nach.value = document.chat.nach.value + param + " ";  
		document.getElementById("smile").innerHTML = "smile";  
	}  
	

und dann weiter unten im body
<a id="smile" href="javascript:ShowSmilies();">smile</a>

Google Chrome und Firefox öffnen beim klicken auf smile die Smilies, der IE nicht, bei dem steht in der Statuszeile: "Fehler auf der Seite". Was für ein Fehler genau, das sagt mir der IE nicht, vielleicht könnt ihr mir das sagen. Vielen dank schonmal!

  1. Hi!

    Wenn du nicht grad nen unknown runtime error hast, sagt ie ein halbwegs aktueller IE sehr wohl, ziemlich detailliert, was der Fehler ist.

    Schmeiss den Debugger an. (F12, Reiter Script, 'start debugging')

    Falls Du noch mit IE 6 unterwegs bist solltest Du dir wenigstens den IE 8 besorgen.

    --
    Vergesst Chuck Norris.
    Sponge Bob kann unter Wasser grillen!
    1. Hab ich vergessen:

      Zumindest bei mir auf der Arbeit neigt der IE zu Abstuerzen, wenn der Debugger offen ist.

      --
      Vergesst Chuck Norris.
      Sponge Bob kann unter Wasser grillen!
      1. Hi,

        Hab ich vergessen:
        Zumindest bei mir auf der Arbeit neigt der IE zu Abstuerzen, wenn der Debugger offen ist.

        Kann es sein, dass du vergisst, das Debuggen zu beenden? Dazu musst du im Debugger auf den entsprechenden Knopf drücken (grüner Pfeil, wenn du an einem Breakpoint bist, roter Knopf sonst). Solange der Debugger steht, ist der IE eingefroren, das ist soweit schon beabsichtigt, da ja noch ein JS ausgeführt wird.

        Bis die Tage,
        Matti

        1. Kann es sein, dass du vergisst, das Debuggen zu beenden?

          Nein. Es geht dann gar nichts mehr und schliesst sich gelegentlich sogar einfach. Schoen wenn von dieser instanz mehrere offene Fenster abstammen und sich dann gleich mit verabschieden.

          --
          Vergesst Chuck Norris.
          Sponge Bob kann unter Wasser grillen!
  2. Hi,

    	gsagt += '<a href="javascript:InsertSmilie(' + "'" + '^^' + "'" + ')";><img src="icon/icon_^^.gif" border="0"></a>';  
    
      document.getElementById("smile").innerHTML = gsagt;
    
      
    
    > `<a id="smile" href="javascript:ShowSmilies();">smile</a>`{:.language-html}  
      
    Dürfen A-Elemente weitere A-Elemente enthalten?  
    Nein.  
      
    Du versuchst aber mit diesem Code, per innerHTML als \*Inhalt\* eines A-Elements weitere A-Elemente zuzuweisen.  
      
    Der IE ist, was die Erzeugung invaliden Codes „per innerHTML“ angeht, teilweise strenger als andere Browser.  
      
    MfG ChrisB  
      
    
    -- 
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?