0 Daumen
747 Aufrufe

Guten Morgen

Bitte, wie bekomme ich einen Erfog

[html switch Tage odd even] mit JavaScript

Danke

Arnold


Code:

<!DOCTYPE html>

<html>

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>background color 1</title>

<style>
html {width:100%; height:100%;}
.day-even {
background: -webkit-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
background: -moz-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
background: -ms-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
background: -o-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
background: radial-gradient(at top left, #ff0000, #ffffff, #ff0000);}

.day-odd {
background: -webkit-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
background: -moz-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
background: -ms-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
background: -o-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
background: radial-gradient(at top left, #66ccff, #ffffff);}
</style>

<script type="javascript">
var today;
var newClass = classNames[ document.body.className ];   
switch (new Date().getDay().toString();)
{
  case ((today & 0) == 0):
    today = document.body.className = 'day-even',
    break;
  case (today & 1):
    today = document.body.className = "day-odd",
    break;
}
</script>

</head>
<body class="day-even day-odd">

</body>

</html>
von

1 Antwort

0 Daumen
 
Beste Antwort

Hallo,

ich bin nicht ganz sicher, was du erreichen möchtest. getDay() liefert dir den Wochentag zurĂŒck. Es scheint mir aber eher, als dass du prĂŒfen möchtest, ob der aktuelle Tag des Monats gerade oder ungerade ist. HierfĂŒr musst du getDate() benutzen. 
Ich habe den Code etwas angepasst, lasse die getDay()-Methode aber erstmal unverÀndert.

Muss das ganze mit einem Switch Statement realisiert werden? Mit einem einfachen if-else sÀhe das so aus:

<!DOCTYPE html>
<html>

<head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
    <title>background color 1</title>

    <style>
        html { width: 100%; height: 100%; }

        .day-even {
            background: -webkit-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
            background: -moz-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
            background: -ms-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
            background: -o-radial-gradient(0% 0%, circle cover, #ff0000 0%, #ffffff 50%, #ff0000 100%);
            background: radial-gradient(at top left, #ff0000, #ffffff, #ff0000);
        }

        .day-odd {
            background: -webkit-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
            background: -moz-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
            background: -ms-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
            background: -o-radial-gradient(0% 0%, circle cover, #66CCFF 0%, #ffffff 100%);
            background: radial-gradient(at top left, #66ccff, #ffffff);
        }
    </style>

</head>
<body>

<script>
    if (new Date().getDay() % 2 === 0) {
        document.body.classList.add("day-even");
    } else {
        document.body.classList.add("day-odd");
    }
</script>

</body>

</html>

Falls es doch ein Switch sein muss, wĂŒrde sich folgendes anbieten:

<script>
    switch (new Date().getDay() % 2) {
        case 0:
            document.body.classList.add("day-even");
            break;
        case 1: // oder default
            document.body.classList.add("day-odd");
    }
</script>

von

# Larry

Vielen Dank :)

Wenn ich das richtig Verstanden habe, so kommt der Script ins Body und nicht ins Head

Alle zwei Propositionnen passen Ausgezeichnet! NatĂŒrlich das statment if() else() passen besser fĂŒr dieses Thema..

Es ist doch ein GlĂŒcksTag, denn schon lange wollte ich fĂŒr jeden WochenTag ene andere WebSeite anzeigen.....

[resolved]

Wenn ich das richtig Verstanden habe, so kommt der Script ins Body und nicht ins Head

Nicht zwingend, hier hast du aber sonst das Problem, dass zuerst das Skript geladen wird und danach der Body mit seinen Elementen. D.h. JavaScript greift auf Objekte zu, die noch gar nicht vorhanden sind.
(Das ließe sich i.Ü. auch anders beheben)

#Larry

Danke,

Ja, warum Kompliziert wenn Einfach... ! :)

https://arenas.pagesperso-orange.fr/Table-OneDrive/Table-OneDrive.html

Danke

Arnold

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community