MediaWiki:Common.js: Difference between revisions
Appearance
Jemaleddin (talk | contribs) No edit summary |
Jemaleddin (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
$(document).ready(function() { | $(document).ready(function() { | ||
$('h2').each(function() { | |||
var $h2 = $(this); | |||
var $editSpan = $h2.find('.mw-editsection'); | |||
if ($editSpan.length) { | |||
var originalTop = $editSpan.offset().top; | |||
var $nextH2 = $h2.nextAll('h2').first(); | |||
var nextH2Top = $nextH2.length ? $nextH2.offset().top : Number.MAX_SAFE_INTEGER; | |||
$editSpan.data('originalTop', originalTop); | |||
$editSpan.data('nextH2Top', nextH2Top); | |||
} | |||
}); | |||
$(window).on('scroll', function() { | |||
var scrollTop = $(window).scrollTop(); | |||
$('.mw-editsection').each(function() { | |||
var $editSpan = $(this); | |||
var originalTop = $editSpan.data('originalTop'); | |||
var nextH2Top = $editSpan.data('nextH2Top'); | |||
if (scrollTop >= originalTop && scrollTop < nextH2Top) { | |||
$editSpan.addClass('fixed-edit-button'); | |||
} else { | |||
$editSpan.removeClass('fixed-edit-button'); | |||
} | |||
}); | |||
}); | }); | ||
Revision as of 08:41, 3 March 2025
/* Any JavaScript here will be loaded for all users on every page load. */
$(document).ready(function() {
$('h2').each(function() {
var $h2 = $(this);
var $editSpan = $h2.find('.mw-editsection');
if ($editSpan.length) {
var originalTop = $editSpan.offset().top;
var $nextH2 = $h2.nextAll('h2').first();
var nextH2Top = $nextH2.length ? $nextH2.offset().top : Number.MAX_SAFE_INTEGER;
$editSpan.data('originalTop', originalTop);
$editSpan.data('nextH2Top', nextH2Top);
}
});
$(window).on('scroll', function() {
var scrollTop = $(window).scrollTop();
$('.mw-editsection').each(function() {
var $editSpan = $(this);
var originalTop = $editSpan.data('originalTop');
var nextH2Top = $editSpan.data('nextH2Top');
if (scrollTop >= originalTop && scrollTop < nextH2Top) {
$editSpan.addClass('fixed-edit-button');
} else {
$editSpan.removeClass('fixed-edit-button');
}
});
});
var $elem = jQuery('<script/>', {
'data-aff': "amazon.com, www.amazon.com : tag = internsocie02-20",
'type': "text/javascript",
'src': "https://cdn.jsdelivr.net/npm/affiliate@2.0.3/dist/affiliate.js",
'id': "aff-js",
'async': ""
});
$("head").append($elem);
});