Hallo liebes Forum,
html und CSS sitzen einigermaßen, aber bei einem aktuellen Projekt komme ich um ein javascript leider nicht herum. Damit kenne ich mich so gar nicht aus.
Was ich bereits erreicht habe:
Über die Funktion "loadExternalHTMLPage" wird per Button-Klick ein Teil der Seite ( die "contentArea" ) neu geladen. Hintergrund: auf Klick wird ein neues Bild mit einigen Texten und Gestaltungselementen neu geladen. Wie der kundige Programmierer dem Quellcode entnehmen kann - der zum Glück funktioniert, den ich aber selber nur bedingt verstehe - wird eine der aufgelisteten Seiten zufällig gewählt. ( pagesToDisplay = ... ). Vermutlich nicht elegant, aber immerhin funktioniert es.
function loadExternalHTMLPage() {
var xmlhttp;
var pagesToDisplay = [
'advice001.html',
'advice002.html',
'advice003.html',
'advice004.html',
'advice005.html',
'advice007.html',
'advice009.html',
'advice010.html',
'advice012.html',
'advice013.html',
'advice014.html',
'advice015.html',
'advice018.html',
'advice025.html',];
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("contentArea").innerHTML = xmlhttp.responseText;
}
}
var randomnumber = Math.floor(Math.random() * pagesToDisplay.length);
xmlhttp.open("GET", pagesToDisplay[randomnumber], true);
xmlhttp.send();
}
var number_times = 0;
function loadExternalHTMLPage() {
var xmlhttp;
var pagesToDisplay = [
'advice001.html',
'advice002.html',
'advice003.html',
'advice004.html',
'advice005.html',
'advice007.html',
'advice009.html',
'advice010.html',
'advice012.html',
'advice013.html',
'advice014.html',
'advice015.html',
'advice018.html',
'advice025.html',];
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("contentArea").innerHTML = xmlhttp.responseText;
}
}
var randomnumber;
if( number_times > 5 ){
randomnumber = 6;
number_times = 0
} else {
randomnumber = Math.floor(Math.random() * pagesToDisplay.length);
number_times++;
}
xmlhttp.open("GET", pagesToDisplay[randomnumber], true);
xmlhttp.send();
}
Alles anzeigen
Woran ich scheitere:
Ich möchte, dass auf beispielsweise jeden 5ten Klick ( also 5, 10, 15, 20 ... ) eine fest definierte Seite angezeigt wird.
Vielen Dank für eure Mühe und beste Grüße aus Hamburg
Fabian