שינוי לוגו לפי צבע האזור בעמוד

יש לכם באתר לוגו שמתמזג עם רקעים מסוימים ונעלם ברקע? הכנתי מדריך על איך להגדיר תמונת לוגו שונה לפי אזור באתר!

איך עושים את זה? שלבים פשוטים לביצוע:

  1. הוסיפו ווידג'ט תמונה עם הלוגו שלכם, ותתנו לו את הקלאס "change-logo" כמובן אל תשכחו להגדיר את המיקום שלי כמקובע שיגלל איתנו לאורך הדף.

  2. תנו קלאס "light-area" לקונטיינרים שבהם תרצו שהלוגו ישתנה.

  3. הטמיעו את הקוד בדפים הרלוונטים בדרך שנוחה לכם (אני הוספתי באמצעות מנהל הקודים של אלמנטור).

  4. בשורה 14 תצטרכו לשנות את הלינק של התמונה הקיימת עם הלינק של הלוגו שלכם (פשוט העתיקו את הלינק מהמדיה)
JavaScript
/*this code develop by dgtool.co.il*/
<script>
document.addEventListener('DOMContentLoaded', function() {
    // Try to find the logo in multiple possible ways
    const logoContainer = document.querySelector('.change-logo');
    const logo = logoContainer ? logoContainer.querySelector('img') || logoContainer : document.querySelector('.change-logo img');
    
    if (!logo) {
        console.error('Logo not found!');
        return;
    }
    
    // Get original logo from the widget and set the dark logo path
    const whiteLogo = logo.tagName === 'IMG' ? logo.src : logo.querySelector('img')?.src;
    const blackLogo = '/wp-content/uploads/2024/11/logo-1.png';   // change the path to the dark logo 
    
    function updateLogo() {
        // Find the element to change
        const targetElement = logo.tagName === 'IMG' ? logo : logo.querySelector('img');
        
        if (!targetElement) {
            return;
        }
        
        const logoRect = logo.getBoundingClientRect();
        const lightAreas = document.querySelectorAll('.light-area');
        let isOverLightArea = false;
        
        lightAreas.forEach(area => {
            const areaRect = area.getBoundingClientRect();
            if (
                logoRect.top <= areaRect.bottom &&
                logoRect.bottom >= areaRect.top &&
                logoRect.left <= areaRect.right &&
                logoRect.right >= areaRect.left
            ) {
                isOverLightArea = true;
            }
        });
        
        // Switch logo based on position
        if (isOverLightArea) {
            targetElement.src = blackLogo;
        } else {
            targetElement.src = whiteLogo;
        }
    }
    
    // Run check on scroll
    document.addEventListener('scroll', updateLogo);
    
    // Initial check
    updateLogo();
});
</script>

זה הכל, ככה תשפרו את החווית משתמש באתר שלכם או של הלקוחות שלכם.

רוצים לשנות צבע לאייקון? הנה המדריך לזה

במידה וקוד ה -Js חל על כל האתר ניתן להטמיע תחת אלמנטור בניהול קודים ובתנאים להגדיר שיחול על כל האתר.

במידה וקוד ה -Js חל על עמודים ספציפיים ניתן להטמיע תחת הגדרות אלמנטור בניהול קודים ובתנאים להגדיר על איזה עמוד הוא יחול או לחלופין להשתמש בווידג'ט Html.

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

ישראל פאר בניית אתרים
ישראל פאר
הבעלים של טוויסט והמייסד של האתר דיגיטול – הבית לבוני אתרים בישראל, מתמחה בבניית אתרי חנות או קטלוג בדגש על חווית משתמש גבוהה, עובד בעיקר במשרד אבל לפחות פעם בשבוע יוצא לעבוד מבית קפה מעניין, נסו גם זה עובד.
העדכונים שלא תרצו לפספס
הירשמו ותהיו הראשונים לקבל את המדריכים הכי חמים למייל.
אלמנטור
הוספת לינקים לטאבים
הקוד יוצר קישורים ישירים לטאבים באלמנטור, במקום שלקוחות יצטרכו לחפש את הטאב הנכון.
ווקומרס
עמוד מבצעים מושלם עם Discount Rules for woo
הצגת המבצעים מהתוסף Discount Rules for WooCommerce בעיצוב מותאם אישית.
אלמנטור
איך ליצור אלמנטים גרירים
הוספת אופציה לגרירת אלמנטים באתר, דרך פשוטה ליצור אינטרקטיביות עם המשתמש.
אלמנטור
איך להוסיף קונפטי באתר אלמנטור
יצירת אפקט קונפטי אחרי פעולות מסוימות באתרי אלמנטור
אלמנטור
שדרוג חוויית העלאת הקבצים באלמנטור – מדריך מהיר וקליל
העלאת קבצים היא חלק בלתי נפרד מטפסים רבים, בואו נהפוך את זה לחוויה חכמה, נוחה ומרשימה?
חיפוש חופשי
העדכונים שלא תרצו לפספס
הירשמו ותהיו הראשונים לקבל את המדריכים הכי חמים למייל.
הרשימה מתעדכנת כל הזמן - מומלץ לשמור את הדף במועדפים!
כדי לשמור את האתר לחצו על Ctrl+D במקלדת (במק D+⌘).