مدیاویکی:Common.js
ظاهر
نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.
- فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلیدهای Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-R)
- گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانههای اپل مکینتاش کلیدهای ⌘-Shift-R)
- Edge: کلید Ctrl را نگهدارید و روی دکمهٔ Refresh کلیک کنید، یا کلیدهای Ctrl-F5 را با هم فشار دهید
(function() {
function detectDarkMode() {
const bgColor = window.getComputedStyle(document.body).backgroundColor;
// تبدیل rgb(34, 34, 34) به [34,34,34]
const rgb = bgColor.match(/\d+/g);
if (!rgb) return;
// محاسبه روشنایی نسبی (luminance)
const r = parseInt(rgb[0], 10);
const g = parseInt(rgb[1], 10);
const b = parseInt(rgb[2], 10);
const luminance = 0.2126*r + 0.7152*g + 0.0722*b;
if (luminance < 128) {
document.body.classList.add('dark-mode');
} else {
document.body.classList.remove('dark-mode');
}
}
// اجرا در شروع بارگذاری صفحه
detectDarkMode();
// همچنین میتوان در صورت تغییر سایز یا تغییر تم با setInterval دوباره بررسی کرد (اختیاری)
window.addEventListener('resize', detectDarkMode);
})();