/* Add custom Js styles below */ document.addEventListener("DOMContentLoaded", () => { const banner = document.querySelector(".container .banner--fixed"); if (!banner || banner.querySelector(".banner-overlay")) return; const overlay = document.createElement("div"); overlay.className = "banner-overlay"; overlay.innerHTML = ` تسوق الآن `; banner.style.position = "relative"; banner.appendChild(overlay); }); document.addEventListener("DOMContentLoaded", function () { // ✅ 1. التحقق من الصفحة الرئيسية فقط const isHome = document.body.classList.contains("home") || window.location.pathname === "/"; if (!isHome) return; // لو مش الصفحة الرئيسية، نخرج بدون تنفيذ أي حاجة /* 2️⃣ تحميل خط Beiruti */ const fontLink = document.createElement("link"); fontLink.rel = "stylesheet"; fontLink.href = "https://fonts.googleapis.com/css2?family=Beiruti:wght@300;400;600;700&display=swap"; document.head.appendChild(fontLink); /* 3️⃣ أول سكشن البانر الرئيسي */ let firstBanner = document.querySelector("section.s-block"); if (firstBanner) { let section = document.createElement("section"); section.className = "section-title"; let title = document.createElement("h2"); title.className = "main-title"; title.innerText = "تسوق على حسب اقسامنا"; /* 4️⃣ تطبيق الخط مباشرة */ title.style.fontFamily = "'Beiruti', sans-serif"; title.style.fontWeight = "700"; section.appendChild(title); firstBanner.parentNode.insertBefore(section, firstBanner.nextSibling); } }); (function () { // إنشاء البريلودر فورًا const preloader = document.createElement("div"); preloader.id = "salla-preloader"; preloader.innerHTML = ` Loading `; document.documentElement.appendChild(preloader); // إخفاؤه بعد اكتمال التحميل const hidePreloader = () => { preloader.classList.add("hidden"); setTimeout(() => preloader.remove(), 100); // إزالة العنصر بسرعة بعد الاختفاء }; // أفضل توقيت لسلة window.addEventListener("load", () => { setTimeout(hidePreloader, 1000); // 1000ms = ثانية واحدة قبل الاختفاء }); })(); document.addEventListener("DOMContentLoaded", function () { const banners = document.querySelectorAll( ".s-block--banners .banner-entry" ); banners.forEach((banner) => { banner.addEventListener("touchstart", press, { passive: true }); banner.addEventListener("mousedown", press); banner.addEventListener("touchend", release, { passive: true }); banner.addEventListener("mouseup", release); banner.addEventListener("mouseleave", release); function press() { banner.style.transform = "scale(0.97)"; } function release() { banner.style.transform = ""; } }); }); // اختيار div البانرات const bannersGrid = document.querySelector('.grid.md\\:grid-cols-3'); if (bannersGrid) { // CSS شامل للـ grid والنصوص والهافر const style = document.createElement('style'); style.textContent = ` /* Grid Responsive */ .grid.md\\:grid-cols-3 { display: grid !important; gap: 10px !important; } /* الموبايل: 2 كروت */ @media (max-width: 767px) { .grid.md\\:grid-cols-3 { grid-template-columns: repeat(2, 1fr) !important; } } /* الديسكتوب: 3 كروت */ @media (min-width: 768px) { .grid.md\\:grid-cols-3 { grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; } } /* كروت البانرات */ .banner-entry { position: relative; height: 200px; background-size: cover; background-position: center; display: flex; justify-content: center; /* تمركز أفقي للنص */ align-items: center; /* تمركز عمودي للنص */ text-decoration: none; color: white; overflow: hidden; border-radius: 8px; transition: transform 0.3s ease, filter 0.3s ease; } /* النصوص داخل الكروت */ .banner-entry__text { position: relative; z-index: 2; text-align: center; font-size: 1rem; /* مقاس موحد مناسب للجوال والديسكتوب */ font-weight: bold; line-height: 1.2; padding: 0 10px; } /* Overlay يختفي بشكل افتراضي */ .banner-entry::before { content: ""; position: absolute; top:0; left:0; right:0; bottom:0; background: rgba(0,0,0,0); /* بدون غمامة افتراضية */ transition: background 0.3s ease, transform 0.3s ease; z-index:1; } /* Hover / Active effect */ .banner-entry:hover::before, .banner-entry:active::before { background: rgba(0,0,0,0.2); /* الغمامة تظهر عند Hover/Click */ transform: scale(1.05); /* تكبير خفيف للبانر */ } .banner-entry:hover, .banner-entry:active { transform: scale(1.03); filter: brightness(1.2); /* الصورة تتوهج */ } `; document.head.appendChild(style); } const style = document.createElement('style'); style.textContent = ` /* الكارد الخارجي */ .s-products-slider-card .s-product-card-entry { border: 1px solid rgba(0,0,0,0.1) !important; border-radius: 12px !important; overflow: hidden !important; transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease !important; position: relative !important; background-color: #fff !important; } /* صورة الكارد */ .s-products-slider-card .s-product-card-image img { width: 100% !important; height: auto !important; display: block !important; transition: transform 0.4s ease, filter 0.4s ease !important; } /* نصوص المحتوى */ .s-products-slider-card .s-product-card-content { padding: 10px 12px !important; text-align: center !important; } .s-products-slider-card .s-product-card-content-title a { color: #111 !important; font-weight: 600 !important; font-size: 0.95rem !important; display: block !important; margin-bottom: 5px !important; transition: color 0.3s ease !important; } /* Hover effect */ .s-products-slider-card .s-product-card-entry:hover { transform: translateY(-6px) !important; box-shadow: 0 15px 25px rgba(0,0,0,0.2) !important; border-color: rgba(0,0,0,0.3) !important; } .s-products-slider-card .s-product-card-entry:hover img { transform: scale(1.07) !important; filter: brightness(1.15) !important; } .s-products-slider-card .s-product-card-entry:hover .s-product-card-content-title a { color: #000 !important; } /* زر الإضافة للسلة */ .s-products-slider-card .s-product-card-content-footer button:hover { transform: scale(1.05) !important; } /* Promotion badge */ .s-products-slider-card .s-product-card-promotion-title { position: absolute !important; top: 8px !important; left: 8px !important; background: rgba(255,255,255,0.9) !important; color: #111 !important; font-size: 0.75rem !important; font-weight: bold !important; padding: 2px 6px !important; border-radius: 4px !important; z-index: 2 !important; transition: background 0.3s ease, color 0.3s ease !important; } .s-products-slider-card .s-product-card-entry:hover .s-product-card-promotion-title { background: #111 !important; color: #fff !important; } `; document.head.appendChild(style); // 1️⃣ استبدال النص باللوجو document.addEventListener("DOMContentLoaded", function() { // حدد العنصر اللي فيه النص "JK" const jkElement = document.querySelector('.store-footer__inner a.flex.items-center h3'); if (jkElement) { // انشئ عنصر img جديد const logo = document.createElement('img'); logo.src = "https://cdn.salla.sa/QRxGY/LgzcTMGnH3dwxzotaqEQQcplfNyjzUdxt6HXbeK8.png"; logo.alt = "JK Logo"; logo.classList.add("footer-logo"); // استبدل النص باللوجو jkElement.parentNode.replaceChild(logo, jkElement); // اضف كلاس للحركة المستمرة (اختياري) logo.classList.add("float"); } }); // إنشاء عنصر خاص بالواتساب باستخدام Shadow DOM const whatsappWrapper = document.createElement('div'); whatsappWrapper.id = 'whatsapp-wrapper'; document.body.appendChild(whatsappWrapper); // إنشاء Shadow DOM const shadow = whatsappWrapper.attachShadow({ mode: 'open' }); // HTML و CSS داخل Shadow DOM shadow.innerHTML = ` `; // إضافة الحركة بعد تحميل الصفحة const whatsappBtn = shadow.getElementById('whatsappBtn'); window.addEventListener('load', () => { setTimeout(() => { whatsappBtn.classList.add('show'); }, 500); }); // إنشاء الحاوية الخاصة بالتساقط const dropContainer = document.createElement("div"); dropContainer.id = "drop-container"; document.body.appendChild(dropContainer); // عدد القطرات التي يتم إنشاؤها const numberOfDrops = 60; function createDrop() { const drop = document.createElement("div"); drop.classList.add("drop"); // مكان البداية العشوائي drop.style.left = Math.random() * 100 + "vw"; // مدة و تأخير الحركة const duration = Math.random() * 5 + 3; // بين 3 و 8 ثواني const delay = Math.random() * 5; drop.style.animationDuration = `${duration}s`; drop.style.animationDelay = `${delay}s`; // إضافته للحاوية dropContainer.appendChild(drop); // إزالة العنصر بعد انتهاء الأنيميشن setTimeout(() => { drop.remove(); }, (duration + delay) * 1000); } // تكرار الإنشاء setInterval(() => { createDrop(); }, 200);