Während ich einige Web-Entwicklung machte, fand ich etwas sehr merkwürdig.JQuery (Dokument) .ready noch ausgeführt, bevor das Dokument bereit ist?
So unten ist mein JQuery Code
$(document).ready(function() {
$(window).scroll(function() { // check if scroll event happened
if ($(window).scrollTop() > $("#first-content").offset().top * 0.75) {
$(".links").removeClass("white").addClass("black");
to white (#f8f8f8)
} else {
$(".links").removeClass("black").addClass("white");
}
});
});
So ist es einfach etwas Abstand von der Spitze bekommt Klassen hinzuzufügen und entfernen auszulösen. Es muss nur einen Punkt geben, der ausgelöst wird, es sei denn, die Struktur der Website ändert sich dynamisch, was meiner Meinung nach in meinem Code nicht möglich ist.
Also das Problem ist, dass es am Ende gut funktioniert. Wenn die 0,75 * -Position vom oberen Rand des Fensters zum oberen Rand des Elements übergeht, ändert sich die Schriftfarbe von weiß zu schwarz und wieder von schwarz zu weiß, wenn ich umgekehrt gehe.
Aber was ich nicht herausfinden kann ist, dass nur ein paar Scrollen vor dem Punkt des Triggers, den ich gesetzt habe, gibt es einen weiteren Punkt, der die Farbe von weiß nach schwarz und schwarz nach weiß JUST ONCE jedes Mal ändert, wenn der Browser neu lädt was nicht möglich ist, es sei denn, der Punkt hat sich sehr schnell verschoben und ist zurückgegangen.
Es wäre einfacher zu verstehen, wenn Sie es selbst versuchen.
https://jsfiddle.net/forJ/q6u1hLoh/1/
Es hat nur einen Punkt der Änderung über der Grenze der grauen und weißen Bereich gerade sein.
Sie könnten jedoch sehen, dass jedes Mal, wenn Sie den Code ausführen, ein vorzeitiger Farbwechselpunkt JUST ONCE vor dem Sollwert auftritt. Ich denke, dass es die jQuery sein muss, die das Problem verursacht und die, die ich eingefügt habe, ist die einzige jQuery, die ich habe.
Schauen Sie sich den ganzen Code in der Verbindung an und bitte schlagen Sie mir vor, warum es einen anderen vorzeitigen Punkt des Auslösers gibt.
Danke
scheint gut für mich zu arbeiten? Könnte der Mangel an Throttling sein, der Klassenwechsel passiert jedes Mal, wenn Sie häufig scrollen. – adeneo
Sehr schöner Effekt, außer es wäre viel schöner, wenn die einzelnen Links die Farbe änderten, wenn sich die Hintergrundfarbe änderte, anstatt sie alle gleichzeitig zu ändern. – clearlight
Was hat das mit "Dokument bereit" zu tun? – charlietfl