מדיה ויקי:Common.js: הבדלים בין גרסאות בדף
קפיצה לניווט
קפיצה לחיפוש
אין תקציר עריכה |
אין תקציר עריכה |
||
שורה 14: | שורה 14: | ||
// הקוד החדש - מוסיפים אחרי הקוד הקיים | // הקוד החדש - מוסיפים אחרי הקוד הקיים | ||
// מוסיפים את זה אחרי הקוד הקיים ב-MediaWiki:Common.js | |||
mw.hook('wikipage.content').add(function ($content) { | |||
if ($('#toc').length) { // בודק אם יש תוכן עניינים בדף | |||
var $toc = $('#toc'); | |||
var $headers = $('h2, h3'); | |||
var $tocLinks = $('#toc a'); | |||
var $firstHeading = $('#firstHeading'); | |||
// פונקציה לעדכון מיקום תוכן העניינים | |||
function updateTocPosition() { | |||
var headerHeight = $firstHeading.offset().top + $firstHeading.outerHeight(); | |||
if ($(window).scrollTop() > headerHeight) { | |||
$toc.css('top', '0'); | |||
} else { | |||
$toc.css('top', '220px'); | |||
} | |||
} | |||
// פונקציה להדגשת הסעיף הנוכחי | |||
function highlightCurrentSection() { | |||
var scrollPosition = $(window).scrollTop(); | |||
$headers.each(function() { | |||
var $header = $(this); | |||
var sectionTop = $header.offset().top; | |||
if (scrollPosition >= sectionTop - 150) { | |||
var id = $header.attr('id'); | |||
$tocLinks.removeClass('active'); | |||
$tocLinks.filter('[href="#' + id + '"]').addClass('active'); | |||
} | |||
}); | |||
} | } | ||
// הוספת מאזיני אירועים | |||
$(window).on('scroll.toc', function() { | |||
$ | requestAnimationFrame(function() { | ||
updateTocPosition(); | |||
highlightCurrentSection(); | |||
} | }); | ||
}); | }); | ||
// קריאה ראשונית | |||
updateTocPosition(); | updateTocPosition(); | ||
highlightCurrentSection(); | highlightCurrentSection(); | ||
} | } | ||
}); | }); |
גרסה מ־22:37, 8 בפברואר 2025
// קוד קיים - משאירים אותו (function () { var userLang = mw.config.get('wgUserLanguage'); var pageName = mw.config.get('wgPageName'); if (pageName === 'רבי_יואל_טייטלבוים' && userLang === 'yi') { window.location.href = mw.util.getUrl('רבי_יואל_טייטלבוים/yi'); } if (pageName === 'רבי_יואל_טייטלבוים/yi' && userLang === 'he') { window.location.href = mw.util.getUrl('רבי_יואל_טייטלבוים'); } })(); // הקוד החדש - מוסיפים אחרי הקוד הקיים // מוסיפים את זה אחרי הקוד הקיים ב-MediaWiki:Common.js mw.hook('wikipage.content').add(function ($content) { if ($('#toc').length) { // בודק אם יש תוכן עניינים בדף var $toc = $('#toc'); var $headers = $('h2, h3'); var $tocLinks = $('#toc a'); var $firstHeading = $('#firstHeading'); // פונקציה לעדכון מיקום תוכן העניינים function updateTocPosition() { var headerHeight = $firstHeading.offset().top + $firstHeading.outerHeight(); if ($(window).scrollTop() > headerHeight) { $toc.css('top', '0'); } else { $toc.css('top', '220px'); } } // פונקציה להדגשת הסעיף הנוכחי function highlightCurrentSection() { var scrollPosition = $(window).scrollTop(); $headers.each(function() { var $header = $(this); var sectionTop = $header.offset().top; if (scrollPosition >= sectionTop - 150) { var id = $header.attr('id'); $tocLinks.removeClass('active'); $tocLinks.filter('[href="#' + id + '"]').addClass('active'); } }); } // הוספת מאזיני אירועים $(window).on('scroll.toc', function() { requestAnimationFrame(function() { updateTocPosition(); highlightCurrentSection(); }); }); // קריאה ראשונית updateTocPosition(); highlightCurrentSection(); } });