Beiträge von Sempervivum

    Geht aber problemlos auch automatisch:

    Hallo Draga, dieses Javascript sollte es tun:

    Hallo Draga_90: Ja, das habe ich gemeint. Für die Prüfung ist dieses Javascript relevant:

    Code
    now = new Date();
    day = now.getDate();
    month = now.getMonth() + 1;
    day = 3; // nur zum Test
    month = 12; // nur zum Test
    if (month == 12 && day >= img.getAttribute("data-day")) {
        console.log("ok");
        if (imgSrc != "none") {
        img.src = imgSrc;
    }

    Wenn Du nicht weißt, wie Du es bei dir einbauen kannst, dann melde dich noch Mal.

    Zitat

    was bedeutet das absolute den genau ,weil die position angaben stehen doch drinne

    Die Positionsangaben sind nur wirksam, wenn man das Element mit position:absolute oder position:relative positioniert.

    Zitat

    warum verschiebt sich das den auf einigen seiten so doll und auf anderen seiten ist alles ok

    Dieses:

    Code
    document.getElementsByTagName('body')[0].appendChild(zahler);

    fügt das Dokument am Ende der Inhalte an, die gerade, wenn das Userscript abläuft, im Body vorhanden sind. Es kann sein, dass Elemente nachträglich, z. B. durch Ajax, hinzu gefügt werden, so dass das Element dann mitten drin steht.

    Das kann man sehr leicht mit den vorhandenen Mitteln erreichen. Ich gebe dir hier jedoch ein Version mit SVG und d3.js, weil ich bei dieser auch die Animation des Textes implementiert habe. Beachte, dass Du dabei d3.js einbinden musst. jQuery ist nicht mehr erforderlich.

    Draga_90: Du hättest für den Adventskalender besser einen neuen Thread auf gemacht, so geht es hier ein wenig durcheinander.

    HTML:

    Code
    <div class="door"><span class="contentclose">17</span><span class="contentopen">Offen 17</span></div>

    CSS:

    Jetzt musst Du nur noch verhindern, dass ein Türchen zu früh geöffnet wird. Sie dir dazu mal dies an:
    Adventskalender

    Schweigt sich das Tutorial darüber aus?

    Probiere dieses Javascript:

    Code
    <script>
            var tuerchen = document.querySelectorAll(".door");
            for (var i = 0; i < tuerchen.length; i++) {
                tuerchen[i].addEventListener("click", function () {
                    this.classList.add("open");
                    this.innerHTML = "";
                })
            }
        </script>

    und dieses CSS:

    Code
            .door.open {
                background-color: transparent;
            }

    Ja, den Thread habe ich verfolgt. Das Fiddle, das Du dort gepostet hast, funktioniert doch einwandfrei. Auf das letzte Posting des TO bin ich nicht eingegangen, weil er den Code so hingeworfen hat, ohne es zu erklären (welchen Code hat er verwendet, anscheinend deinen. Funktioniert das jetzt oder nicht? Wenn nicht, was geht nicht?)

    Leider kenne ich den Hintergrund nicht. Willst Du dieses div einer bestehenden Seite mit Userscript hinzu fügen? Bei deinem Code ist der body leer, weil das div durch die absolute Positionierung aus dem Fluss heraus genommen wird, und hat deshalb die Höhe 0. Und height:100% bezieht sich auf das Elternelement, in diesem Fall ist das body. D. h. wenn body die Höhe 0 hat, hat auch das div die Höhe 0 und ist nicht sichtbar. Versuche, Breite und Höhe des div auf 100vw und 100vh zu setzen.

    Das ließe sich mit eval() machen, aber ich empfehle eher, die Image-Objekte in einem Objekt abzulegen:

    Code
    var images = {};
    images.img1 = new Image();
    images.img1.src = "bild1.jpg";
    images.img2 = new Image();
    images.img2.src = "bild2.jpg";

    Dann kannst Du sie so ansprechen:

    Code
    document.getElementById('bl' +zw[i]).appendChild(images['img' + (i+1)]);

    Übrigens: Dieses:

    Code
            $("#div1, #div2, #div3").each(function (idx, item) {
                $(item).css({
                    "position": "fixed", "background-color": "blue", top: "0px", left: "0px",
                    height: "100px", width: "200px"
                });
            });

    geht noch wesentlich kürzer:

    Code
    $("#div1, #div2, #div3").css({
        "position": "fixed", "background-color": "blue", top: "0px", left: "0px",
         height: "100px", width: "200px"
    });