-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Logo #1
Comments
Ten kod zostaw:
|
https://codepen.io/Wojciech-Przyluski/pen/MWzvmYd
śr., 5 lip 2023 o 12:01 Krzysztof ***@***.***> napisał(a):
… Ten kod zostaw:
function logoSwitch(sectionLogoClass, prevSectionLogoClass, colorClass) {
const prevSectionLogo = $(prevSectionLogoClass);
const color = $(colorClass).css('color');
$(sectionLogoClass).each(function() {
const row = $(this).closest('.row');
// Sprawdzenie, czy poprzednie logo i wiersz są widoczne
if (prevSectionLogo.is(':visible') && row.is(':visible')) {
$(this).css('top', prevSectionLogo.offset().top - row.offset().top);
// Zmiana koloru
$(this).css('color', color);
}
});
}
$(document).scroll(function() {
logoSwitch('.section-2-logo', '.section-1-logo', '.section-1-logo');
logoSwitch('.section-3-logo', '.section-2-logo', '.section-1-logo');
logoSwitch('.section-4-logo', '.section-3-logo', '.section-2-logo');
logoSwitch('.section-5-logo', '.section-4-logo', '.section-1-logo');
});
logoSwitch('.section-2-logo', '.section-1-logo', '.section-1-logo');
logoSwitch('.section-3-logo', '.section-2-logo', '.section-1-logo');
logoSwitch('.section-4-logo', '.section-3-logo', '.section-2-logo');
logoSwitch('.section-5-logo', '.section-4-logo', '.section-1-logo');
—
Reply to this email directly, view it on GitHub
<#1 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A4BWGEJS43HFIOYYKTWKPIDXOU3PLANCNFSM6AAAAAAZ6WB2ZI>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Aktualny kod:
ChatGPT -> zoptymalizuj poniższy kod JS
Oto opis wprowadzonych zmian:
Przeniesiono inicjalizację prevSectionLogo i color poza pętlę .each(). Nie ma potrzeby inicjalizować ich za każdym razem wewnątrz pętli, ponieważ są stałe dla danego wywołania logoSwitch().
Przeniesiono pobieranie row poza pętlę .each(). Pobieranie .closest('.row') jest niezależne od elementów .section-2-logo, .section-3-logo itd. Nie ma potrzeby wykonywać tej samej operacji w każdej iteracji pętli.
Pobranie wartości $(colorClass).css('color') przeniesiono przed pętlę .each(). Ponownie, ta wartość nie zmienia się w trakcie iteracji i nie ma potrzeby pobierania jej za każdym razem.
Te zmiany zmniejszą liczbę operacji i przyspieszą wykonanie kodu. Dodatkowo, jeśli możliwe, upewnij się, że używasz najnowszych wersji bibliotek JavaScript, takich jak jQuery, aby zapewnić optymalność i wydajność działania kodu.
The text was updated successfully, but these errors were encountered: