Seite 3 von 4

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 06.04.2014 19:06
von Kiffi
Lieber es_91,
es_91 hat geschrieben:weder die IE Konsole noch der Firefox meldet mir Fehler.
dann schau noch einmal genauer hin:

IE:
Die Eigenschaft "which" eines undefinierten oder Nullverweises kann nicht abgerufen werden. (Zeile 10)

Chrome:
Uncaught TypeError: Cannot read property 'which' of undefined (Zeile 10)

Firefox:
TypeError: evt is undefined (Zeile 10)

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 06.04.2014 22:11
von es_91
Lieber Kiffi,

was soll ich sagen, Du hast Recht. Ich hatte den Code nochmals im Editor hier im Forum bearbeitet (eigentlich nur Zeilenumbrüche eingefügt... :| ) und dabei müssen diese Fehler entstanden sein. Hier ist nochmal der code, wie ich ihn ursprünglich posten wollte und der zeigt auch keine Fehlermeldungen mehr:

Code: Alles auswählen

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">

function clearConsole(consoleColorFront, consoleColorBack) {ConsoleBgDiv.innerHTML = ""; document.getElementById("ConsoleBgDiv").style = 'width:800px; height:8000px; background-color:#' + consoleColorBack;}

var thisSpan; var ConsoleBgDiv; var consoleColFront; var consoleColBack;

function whichKeyonpress(evt) {evt = (evt) ? evt : ((window.event) ? window.event : ""); alert(evt.which);}

onload = function() {ConsoleBgDiv = document.createElement("div"); ConsoleBgDiv.id = "ConsoleBgDiv"; ConsoleBgDiv.style.width = "800px"; document.getElementById("ConsoleBG").appendChild(ConsoleBgDiv);

ConsoleBgDiv.style.height = "8000px"; clearConsole(0, "FFFF00");

thisSpan = document.createElement("span");
thisSpan.id = "thisSpan";
thisSpan.className = "black";
document.getElementById("ConsoleBgDiv").appendChild(thisSpan); document.getElementById("thisSpan").innerHTML = document.getElementById("thisSpan").innerHTML + "<span style='color:#FFFFFF'>29<br /></span>";

thisSpan = document.createElement("span");
thisSpan.id = "thisSpan";
thisSpan.className = "black";
document.getElementById("ConsoleBgDiv").appendChild(thisSpan); document.getElementById("thisSpan").innerHTML = document.getElementById("thisSpan").innerHTML + "<span style='color:#FFFFFF'>30<br /></span>";

ConsoleBgDiv.addEventListener('keypress', whichKeyonpress, true);
}</script><style type="text/css">body {  }  .black { background-color:#000000; } </style>

</head>
<body>
<font face="courier"><span id="ConsoleBG"></span></font></body>
</html>
... Er macht aber etwas ganz gewaltig falsch. Wie Euch sicherlich aufgefallen ist, ist im Firefox die ganze Seite gelb, im Chrome und IE nicht. Woran kann das liegen?

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 06.04.2014 22:14
von RSBasic
Allgemeinfrage: In welchem Editor schreibst du deinen Code? Benutzt du überhaupt Einrückungen?

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 06.04.2014 22:18
von es_91
Bitteschön, dann eben mit Einrückungen:

Code: Alles auswählen

<!DOCTYPE html>
<html>
  <head>
    <script type="text/javascript">
      
      function clearConsole(consoleColorFront, consoleColorBack) {
        
        ConsoleBgDiv.innerHTML = "";
        document.getElementById("ConsoleBgDiv").style = 'width:800px; height:8000px; background-color:#' + consoleColorBack;
        
      }
      
      var thisSpan;
      var ConsoleBgDiv;
      var consoleColFront;
      var consoleColBack;
      
      function whichKeyonpress(evt) {
        
        evt = (evt) ? evt : ((window.event) ? window.event : "");
        alert(evt.which);
        
      }
      
      onload = function() {
        
        ConsoleBgDiv = document.createElement("div");
        ConsoleBgDiv.id = "ConsoleBgDiv";
        ConsoleBgDiv.style.width = "800px";
        document.getElementById("ConsoleBG").appendChild(ConsoleBgDiv);
        
        ConsoleBgDiv.style.height = "8000px";
        clearConsole(0, "FFFF00");
        
        thisSpan = document.createElement("span");
        thisSpan.id = "thisSpan";
        thisSpan.className = "black";
        document.getElementById("ConsoleBgDiv").appendChild(thisSpan);
        document.getElementById("thisSpan").innerHTML = document.getElementById("thisSpan").innerHTML + "<span style='color:#FFFFFF'>29<br /></span>";
        
        thisSpan = document.createElement("span");
        thisSpan.id = "thisSpan";
        thisSpan.className = "black";
        document.getElementById("ConsoleBgDiv").appendChild(thisSpan);
        document.getElementById("thisSpan").innerHTML = document.getElementById("thisSpan").innerHTML + "<span style='color:#FFFFFF'>30<br /></span>";
        
        ConsoleBgDiv.addEventListener('keypress', whichKeyonpress, true);
        
      }
      
    </script>
    
    <style type="text/css">body {  }  .black { background-color:#000000; } </style>
  </head>
  <body>
    <font face="courier">
      <span id="ConsoleBG" />
    </font>
  </body>
</html>
Ich benutzen den Editor (Notepad) und Notepad++.

Nun sieht man deutlich, dass zwar der IE die Keys ausgibt, Mozilla und Google aber nicht.

Hat jemand eine Idee, wie man Soetwas für Mozilla und Google Chrome umsetzen kann?

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 13:31
von bobobo
ist das eventuell Browser-versionsabhängig?

Bei mir sieht alles ziemlich gleich aus, chrome,FF und IE . IE will aber ne Bestätigung von wegen aktivem Inhalt
und der Mozilla-Fuchs stellt den Div-container gelb dar.

Und bei Drücken der Leertase rutscht alles n Stück nachoben .. in allen Browsern


(Javascript ohne Framework mit Browserweichen ist heutzutage die Pest in Tüten)

und goto find icht trotzdem gut

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 15:28
von es_91
Ich habe den Firefox 28.0, den IE 9 und Chrome 33.irgendwas.

Dass alles eine Zeile nach oben rutscht ist normal, das liegt am autoscroll der Browser (die div-Box ist 8000 Pixel hoch).

Der Div-Container soll ja gelb aussehen, das geht aber so nur in Mozilla Firefox und ich suche nach einer Lösung für die anderen beiden Browser. Und das mit den Zeichencodes-abfangen bräuchte ich auch in allen Browsern.

Wo bekomme ich denn ein Javascript Framework mit Browserweichen?

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 16:14
von NicTheQuick
Das hat GronkhLP schon auf etwas weiter vorne gesagt: GronkhLPs Post

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 16:29
von es_91
Oh ja, vielen Dank.

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 17:44
von bobobo
Falls dann noch etwas fehlt, dann findest Du es hier :bounce:

Re: [HTML/JavaScript] diverse Fragen / Diskussion

Verfasst: 07.04.2014 19:35
von es_91
Okay, das Problem mit dem EventListener währe gelöst. Man fragt einfach das window nach dem Event ab, nicht das <div>, anders scheint es in Mozilla und Chrome nicht zu gehen...

Code: Alles auswählen

window.addEventListener("keypress", function(event) {alert(event.which);});
Aber wie kann ich den Bildschirm mit Farbe füllen unter IE9 und Chrome ?