MediaWiki:Common.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
// Force the glossary and music creation forms to open in a new tab
$( function() {
// This selector targets both form containers by their ID
var $formContainer = $( '#new-term-form, #new-concept-form' );
if ( $formContainer.length ) {
$formContainer.find( 'form' ).attr( 'target', '_blank' );
}
} );
/* Vulgate */
// Function to resize parchment backgrounds to match content height
function resizeParchments() {
var containers = document.querySelectorAll('.vulgate-container');
containers.forEach(function(container) {
var content = container.querySelector('.vulgate-content');
var parchment = container.querySelector('.vulgate-parchment');
if (content && parchment) {
parchment.style.height = content.offsetHeight + 'px';
}
});
}
// Appends the SVG filter needed for the wavy edge effect
function addParchmentFilter() {
var svgFilter = '<svg style="position:absolute; height:0; width:0;">' +
'<filter id="wavy2">' +
'<feTurbulence x="0" y="0" baseFrequency="0.015" numOctaves="5" seed="1" />' +
'<feDisplacementMap in="SourceGraphic" scale="15" />' +
'</filter>' +
'</svg>';
$('body').append(svgFilter);
}
// Run functions on page load and resize
$(document).ready(function() {
addParchmentFilter();
resizeParchments();
});
$(window).on('resize', resizeParchments);