MediaWiki:Gadget-CustomButtons.js
Jump to navigation
Jump to search
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)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
$(function() {
/* Quote Template Buttons */
$('.quote-buttons').each(function() {
var $quoteBox = $(this).closest('.quoteBox');
$(this).find('#showAllButton').click(function() {
$quoteBox.find('.nihongo-english').css('display', 'inline');
$quoteBox.find('.nihongo-japanese').css('display', 'inline');
$quoteBox.find('.nihongo-bracket').css('display', 'inline');
$quoteBox.find('.nihongo-romaji').remove(); // Remove any appended romaji spans
});
$(this).find('#showEnglishButton').click(function() {
$quoteBox.find('.nihongo-english').css('display', 'inline');
$quoteBox.find('.nihongo-japanese').css('display', 'none');
$quoteBox.find('.nihongo-romaji').css('display', 'none');
$quoteBox.find('.nihongo-bracket').css('display', 'none');
});
$(this).find('#showJapaneseButton').click(function() {
$quoteBox.find('.nihongo-english').css('display', 'none');
$quoteBox.find('.nihongo-japanese').css('display', 'inline');
$quoteBox.find('.nihongo-romaji').css('display', 'none');
$quoteBox.find('.nihongo-bracket').css('display', 'none');
});
$(this).find('#showRomajiButton').click(function() {
$quoteBox.find('.nihongo-english').css('display', 'none');
$quoteBox.find('.nihongo-bracket').css('display', 'none');
$quoteBox.find('.nihongo-japanese').each(function() {
var $japaneseElement = $(this);
var romaji = $japaneseElement.data('content');
if (romaji) {
if ($japaneseElement.next('.nihongo-romaji').length === 0) {
$japaneseElement.after('<span class="nihongo-romaji" style="display:inline; font-family:Meiryo">' + romaji + '</span>');
} else {
$japaneseElement.next('.nihongo-romaji').css('display', 'inline');
}
$japaneseElement.css('display', 'none');
} else {
$japaneseElement.closest('.popup-wrapper').find('.nihongo-english').css('display', 'inline');
$japaneseElement.css('display', 'none');
}
});
$quoteBox.find('.popup-box').css('display', 'none');
});
});
/* DiffBox Template Buttons */
// Function to switch tabs
function switchTab($tab) {
var $tabContainer = $tab.closest('.tabber');
var $tabs = $tabContainer.find('.tabber__tab');
var $panels = $tabContainer.find('.tabber__panel');
// Deactivate all tabs and hide all panels
$tabs.attr('aria-selected', 'false');
$panels.attr('aria-hidden', 'true');
// Activate the selected tab and show the corresponding panel
$tab.attr('aria-selected', 'true');
var panelId = $tab.attr('aria-controls');
$('#' + panelId).attr('aria-hidden', 'false');
}
// Event handler for volDiffBtn1 to select the first tab
$('.volDiffBtn1').click(function() {
$('.volDiffImages .tabber').each(function() {
var $firstTab = $(this).find('.tabber__tabs .tabber__tab').eq(0);
switchTab($firstTab);
});
});
// Event handler for volDiffBtn2 to select the second tab
$('.volDiffBtn2').click(function() {
$('.volDiffImages .tabber').each(function() {
var $secondTab = $(this).find('.tabber__tabs .tabber__tab').eq(1);
switchTab($secondTab);
});
});
});