Div Hintergrundfarbe ändern wenn beim Scrollen top erreicht

  • hallo zusammen,

    Ich hoffe ich bin hier richtig.


    Frage?


    Ist es möglich, dass sich die Hintergrundfarbe eines div ändert, wenn dieser beim Scrollen den top Bereich erreicht?


    Ich habe es zwar mit "position:sticky" und top soweit, dass der div stehen bleibt beim Scrollen,

    und der Rest dahinter weiter scrollt, aber ich weiß nicht wie ich die farbe ändern kann.


    Ist das überhaupt möglich? Und wenn ja, wie?

    Ich bin ein absoluter Anfänger, dies vorweg.


    Vielen Dank für eure Antworten.

  • Das wäre ein teil des quelltextes.


    Der Div container child01-index bleibt beim scrollen dann 20px von oben stehen.
    Normal ist die hintergrundfarbe transparent, und soll wenn der container oben ist weiß werden.


    Danke für deinen code, muss ich erstmal verstehen wie dieser funktioniert.


    CSS Teil


  • Also, ich habe jetzt mal ein wenig rum probiert,
    ich bekomme es nicht hin das mir in irgendeiner form die Position meines Divcontainers angezeigt wird.

    Hab zuletzt das "GetElementsByTagName" durch "GetElementById" ersetzt um geziehlt diese anzusprechen, aber es funktioniert nicht.

    Was mach ich Falsch?


    CSS Datei


  • Ich verstehe gerade nicht was du da genau vor hast , aber eins kann ich dir schon mal so zeigen , das die Zeile falsch ist

    Code
    1. el=document.getElementById('child')[0];

    da muß das [0] weg

  • Das lässt sich mit wenigen Zeilen Javascript machen:

    Testseite:

  • basti1012


    Habe versucht das div über die id anzusprechen und nicht über den tag. Aber das funktioniert auch nicht wenn ich die [0] entferne.


    Sempervivum


    Vielen dank, das probiere ich gleich mal aus.



    Und dann noch

    tk1234


    Was ist verkehrt in mehreren Foren zu posten?

  • Was ist verkehrt in mehreren Foren zu posten?

    Erklärung:

    Crossposting bedeutet, dass ein und dieselbe Frage in mehreren Foren oder Newsgroups gleichzeitig gestellt wird. Ein solches Verhalten wird von den meisten Helfern nicht toleriert, denn damit stellst Du einerseits die Kompetenz der Helfer jedes einzelnen Forums und Newsgroup in Frage und bewirkst zudem, dass ein zig-faches an Stunden aufgewendet wird, um nur ein einziges Problem zu lösen, denn überall werden sich die Helfer daran setzen, eine Lösung für Dich zu finden. Das ist ganz klar ein Missbrauch an dem kostenlosen und freiwilligen Support, der hier angeboten wird. Wenn Deine Frage klar und deutlich gestellt wurde, dann wirst Du ganz bestimmt innerhalb kürzester Zeit eine Antwort erhalten. Sollte dies auch nach mehreren Tagen nicht der Fall sein, dann versuche bitte die Frage besser zu formulieren. Falls Du dennoch in einem zweiten Forum posten solltest, erwähne bitte, dass Du die Frage schon woanders gestellt hast, und dass Du es tust, weil keine Lösung gefunden werden konnte.

  • Oh okay, dann bitte ich vielmals um Entschuldigung.

    Das war nicht beabsichtigt. Ich bin meist nicht in foren zum posten unterwegs. Ich versuch es meistens selbst herraus zu bekommen.