Skip to content
Snippets Groups Projects
Commit ae0acbb1 authored by Dr. Barbara Dörsam's avatar Dr. Barbara Dörsam
Browse files

DOM-Korrekturen

parent f180640f
No related branches found
No related tags found
No related merge requests found
Showing
with 2 additions and 493 deletions
function ulAnfuegen(eltern) {
let ul = document.createElement("ul");
eltern.appendChild(ul);
return ul;
}
function liAnfuegen(ul, kapitel) {
let li = document.createElement("li");
ul.appendChild(li);
let a = document.createElement("a");
a.href = "#" + kapitel.id;
a.innerHTML = kapitel.innerHTML;
li.appendChild(a);
return li;
}
function ladeInhaltsverzeichnis() {
let nav = document.getElementById("nav");
let h2s = document.getElementsByTagName("h2");
if(h2s.length > 0) {
let ul = ulAnfuegen(nav);
for (let index = 0; index < h2s.length; index++) {
const h2 = h2s[index];
let li = liAnfuegen(ul, h2);
let h3s = h2.parentNode.getElementsByTagName("h3");
if(h3s.length > 0) {
let ul3 = ulAnfuegen(li);
for (let index = 0; index < h3s.length; index++) {
const h3 = h3s[index];
let li = liAnfuegen(ul3, h3);
}
}
}
}
}
function erstelleZurueckLink() {
let div = document.createElement("div");
let a = document.createElement("a");
div.appendChild(a);
a.href="#nav";
a.innerHTML = "Nach oben";
return div;
}
function zurueckAnKapitelende() {
let h2s = document.getElementsByTagName("h2");
if(h2s.length > 0) {
for (let index = 0; index < h2s.length; index++) {
const h2 = h2s[index];
h2.parentNode.appendChild(erstelleZurueckLink());
}
}
}
function zurueckVorNaechstemKapitel() {
let h3s = document.getElementsByTagName("h3");
if(h3s.length > 0) {
for (let index = 0; index < h3s.length; index++) {
const h3 = h3s[index];
h3.parentNode.insertBefore(erstelleZurueckLink(), h3);
}
}
}
\ No newline at end of file
function createCard(body, name, fct) {
let div1 = document.createElement("div");
body.appendChild(div1);
div1.classList.add("schild");
let h2 = document.createElement("h2");
h2.innerHTML = "Hallo, ich heiße ...";
div1.appendChild(h2);
let div12 = document.createElement("div");
div1.appendChild(div12);
div12.classList.add("name");
let p1 = document.createElement("p");
div12.appendChild(p1);
p1.innerHTML = name;
let p2 = document.createElement("p");
div12.appendChild(p2);
p2.innerHTML = fct;
}
function createCards() {
let body = document.getElementsByTagName("body")[0];
let pl = new Professorenliste();
let i = 0;
while(i < pl.laenge()) {
createCard(body, pl.nameFuerIndex(i), pl.gebietFuerIndex(i));
i++;
}
}
class Autor {
constructor(vorname, nachname, geburtsjahr = -1, sterbejahr = -1, bild) {
this.name = new Name(vorname, nachname);
this.geburtsjahr = geburtsjahr;
this.sterbejahr = sterbejahr;
if(bild != undefined) {
this.bild = bild;
} else {
this.bild = "placeholder.jpg";
}
}
getGeburtsjahr() {
let result = '*';
if (this.geburtsjahr != -1) {
result = this.geburtsjahr;
};
return result;
}
getSterbejahr() {
let result = '*';
if (this.sterbejahr != -1) {
result = this.sterbejahr;
}
return result;
}
getName() {
return this.name.toString();
}
toString() {
return this.name.toString() + ' (' + this.getGeburtsjahr() + ' - ' + this.getSterbejahr() + ')';
}
equals(autor) {
if (this.name.equals(autor.name) && this.geburtsjahr == autor.geburtsjahr && this.sterbejahr == autor.sterbejahr) {
return true;
} else {
return false;
}
}
}
\ No newline at end of file
class Name {
constructor(vorname = null, nachname = null) {
this.vorname = vorname;
this.nachname = nachname;
}
toString() {
if (this.vorname == null) {
var vorname = '';
} else {
var vorname = this.vorname;
}
if (this.nachname == null) {
var nachname = '';
} else {
var nachname = ' ' + this.nachname;
}
return vorname + " " + nachname;
}
equals(name) {
if (name.vorname == this.vorname && name.nachname == this.nachname) {
return true;
} else {
return false;
}
}
}
class Radio {
constructor(a = 0, b = 85) {
this.eingeschaltet = false;
this.lautstaerke = a;
this.ls_korrigieren();
this.frequenz = b;
this.fr_korrigieren();
}
ls_korrigieren() {
if(this.lautstaerke < 0) {
this.lautstaerke = 0;
} else {
if(this.lautstaerke > 10) {
this.lautstaerke = 10;
}
}
}
fr_korrigieren() {
if(this.frequenz < 85) {
this.frequenz = 85;
} else {
if(this.frequenz > 110) {
this.frequenz = 110;
}
}
}
lauter() {
if(this.eingeschaltet) {
this.lautstaerke++;
this.ls_korrigieren();
}
}
leiser() {
if(this.eingeschaltet) {
this.lautstaerke--;
this.ls_korrigieren();
}
}
an() {
this.eingeschaltet = true;
}
aus() {
this.eingeschaltet = false;
}
frequenzSetzen(f) {
if(this.eingeschaltet) {
this.frequenz = f;
this.fr_korrigieren();
}
}
toString() {
if(!this.eingeschaltet) {
return "--- aus ---";
}
return this.frequenz + " Vol: " + this.lautstaerke + "/10";
}
}
\ No newline at end of file
let radio = new Radio(3, 103.4);
function lauter() {
radio.lauter();
display();
}
function leiser() {
radio.leiser();
display();
}
function an() {
radio.an();
display();
}
function aus() {
radio.aus();
display();
}
function frequenz() {
radio.frequenzSetzen(document.getElementById('frequenz').value);
display();
}
function display() {
document.getElementById('display').innerHTML = radio.toString();
}
//var autoren = '{"autoren": [{"name": "Dürrenmatt", "vor": "Friedrich", "geb": 1921, "tod": 1990, "buecher": [{"titel": "Die Physiker"}, {"titel": "Der Besuch der alten Dame"}, {"titel": "Der Richter und sein Henker"}]}, {"name": "Frisch", "vor": "Max", "geb": 1911, "tod": 1991, "buecher": [{"titel": "Andorra"}, {"titel": "Stiller"}, {"titel": "Homo Faber"}]}, {"name": "Suter", "vor": "Martin", "geb": 1948, "tod": "-", "buecher": [{"titel": "Die Zeit, die Zeit"}, {"titel": "Die dunkle Seite des Mondes"}, {"titel": "Montechristo"}]}]}';
function autorenEinlesen() {
let ajax = new XMLHttpRequest();
if(ajax!=null) {
ajax.open("POST","autoren.php");
ajax.onreadystatechange = function(){
if(this.readyState == 4){
if(this.status == 200){
anzeige(this.responseText);
}
}
}
ajax.send();
}
}
function anzeigen(data) {
var object = JSON.parse(data);
var autorenArray = object.autoren;
var table = document.getElementsByClassName("table")[0];
for(var i=0; i < autorenArray.length; i++) {
var autor = autorenArray[i];
var buecher = autor.buecher;
var row = document.createElement("div");
table.appendChild(row);
row.classList.add("row");
var td = document.createElement("div");
row.appendChild(td);
td.classList.add("column");
td.innerHTML = autor.name;
td_vorname = document.createElement("div");
row.appendChild(td_vorname);
td_vorname.classList.add("column");
td_vorname.innerHTML = autor.vor;
td = document.createElement("div");
td.classList.add("column");
row.appendChild(td);
td.innerHTML = autor.geb;
td = document.createElement("div");
td.classList.add("column");
row.appendChild(td);
td.innerHTML = autor.tod;
for(var j=0; j < buecher.length; j++) {
var row = document.createElement("div");
td_vorname.appendChild(row);
row.classList.add("row");
var td = document.createElement("div");
td.classList.add("column2");
row.appendChild(td);
// td = document.createElement("div");
// td.classList.add("column2");
// row.appendChild(td);
td.colSpan = 3;
td.innerHTML = buecher[j].titel;
}
}
}
\ No newline at end of file
function ueberschriftAendern() {
let h1 = document.getElementsByTagName("h1")[0];
h1.innerHTML = "Meien neue Überschrift";
}
function hintergrundEinfaerben() {
let body = document.getElementsByTagName("body")[0];
body.style.background = "cyan";
}
function tabelleEinfaerben() {
let divs = document.getElementsByClassName("row");
for (let index = 0; index < divs.length; index++) {
let div = divs[index];
let column = div.children[index];
column.style.background = "red";
}
}
\ No newline at end of file
function zeilenZaehlen() {
let rows = document.getElementsByClassName("row");
let h2 = document.createElement("h2");
h2.innerHTML = rows.length;
let body = document.getElementsByTagName("body")[0];
let table = document.getElementById("buttons");
body.insertBefore(h2, table);
}
function zellenLoeschen() {
let rows = document.getElementsByClassName("row");
for (let index = 0; index < rows.length; index++) {
const row = rows[index];
if(row.children.length > 1) {
row.removeChild(row.children[1]);
}
}
}
let farben = ["red", "blue", "green"];
function zebraMuster() {
let farbenNr = Math.floor(Math.random() * farben.length);
let rows = document.getElementsByClassName("row");
for (let index = 0; index < rows.length; index++) {
if(index % 2 == 0) {
const row = rows[index];
row.style.background = farben[farbenNr];
}
}
}
\ No newline at end of file
function farbeAendern1() {
let ps = document.getElementsByTagName("p");
for (let index = 0; index < ps.length; index++) {
let p = ps[index];
p.style.color = "red";
}
}
function farbeAendern2() {
let ps = document.getElementsByTagName("p");
for (let i = 0; i < ps.length; i++) {
let p = ps[i];
if ((i % 3) == 0) {
p.style.color = "red";
} else {
if ((i % 3) == 1) {
p.style.color = "green";
} else {
p.style.color = "blue";
}
}
}
}
function absatzLoeschen() {
let ps = document.getElementsByTagName("p");
if(ps.length > 0) {
let parent = ps[ps.length-1].parentNode;
parent.removeChild(ps[ps.length-1]);
}
}
\ No newline at end of file
function groesser(div) {
div.style.width = "80%";
}
function normal(div) {
div.style.width = "30%";
}
function skalieren() {
let div = document.getElementById("rahmen");
let img = div.children[0];
img.style.width = "150%";
img.style.right = "25%";
img.style.bottom = "25%";
div.style.overflow = "hidden";
}
function normalSkalieren() {
let div = document.getElementById("rahmen");
let img = div.children[0];
img.style.width = "100%";
img.style.right = "0px";
img.style.bottom = "0px";
div.style.overflow = "visible";
}
let farben = '{"konfig": {"farbe" : "rgb(0, 0, 255)", "schrift": "rgb(255, 0, 0)"}}';
function farbenAendern() {
let konfig = JSON.parse(farben).konfig;
let body = document.getElementsByTagName("body")[0];
body.style.background = konfig.farbe;
body.style.color = konfig.schrift;
}
\ No newline at end of file
let autoren = '{"autoren": [{"name": "Dürrenmatt", "vor": "Friedrich", "geb": 1921, "tod": 1990}, ' +
'{"name": "Frisch", "vor": "Max", "geb": 1911, "tod": 1991},' +
' {"name": "Suter", "vor": "Martin", "geb": 1948, "tod": "-"}]}';
let autorenListe = JSON.parse(autoren).autoren;
let parent = document.getElementsByClassName("table")[0];
for(let i = 0; i < autorenListe.length; i++) {
let autor = autorenListe[i];
let div = document.createElement("div");
div.setAttribute("class", "row");
parent.appendChild(div);
createColumn(div, autor.name);
createColumn(div, autor.vor);
createColumn(div, autor.geb);
createColumn(div, autor.tod);
}
function createColumn(parent, text) {
let div = document.createElement("div");
div.setAttribute("class", "column");
div.innerHTML = text;
parent.appendChild(div);
}
\ No newline at end of file
'{"name": "Frisch", "vor": "Max", "geb": 1911, "tod": 1991},' +
' {"name": "Suter", "vor": "Martin", "geb": 1948, "tod": "-"}]}';
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment