MediaWiki:Common.js
Appearance
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.
mw.loader.using('mediawiki.util').then(function () {
$(function () {
let selectedLeft = null;
let selectedRight = null;
/* ================= TABS ================= */
document.querySelectorAll('.mw-tab-buttons').forEach(group => {
const buttons = group.querySelectorAll('.mw-tab-btn');
buttons.forEach(btn => {
btn.onclick = function () {
const tabId = this.dataset.tab;
const container = group.closest('.mw-tab-content') || document;
container.querySelectorAll('.mw-tab-content').forEach(c => c.style.display = 'none');
container.querySelectorAll('.mw-tab-btn').forEach(b => b.classList.remove('active'));
this.classList.add('active');
const target = container.querySelector('#' + tabId);
if (target) target.style.display = 'block';
};
});
if (buttons.length) buttons[0].click();
});
/* ================= DROPDOWNS (PURE CLEAN) ================= */
function createDropdown(targetId, label, options, side) {
const container = document.getElementById(targetId);
const button = document.createElement('button');
const list = document.createElement('div');
button.textContent = label;
list.style.display = 'none';
Object.keys(options).forEach(key => {
const item = document.createElement('div');
item.textContent = options[key];
item.onclick = function () {
button.textContent = options[key];
list.style.display = 'none';
if (side === 'left') selectedLeft = key;
if (side === 'right') selectedRight = key;
updateResult();
};
list.appendChild(item);
});
button.onclick = function () {
list.style.display = list.style.display === 'none' ? 'block' : 'none';
};
container.appendChild(button);
container.appendChild(list);
}
createDropdown("dropdown-left", "Select Mod", {
flame_resonance: "Flame Resonance",
embers: "Embers",
blaze_blessing: "Blaze Blessing",
burning_wrath: "Burning Wrath"
}, "left");
createDropdown("dropdown-right", "Select Category", {
burn: "Burn",
deviant_energy: "Deviant Energy",
survival: "Survival",
violent: "Violent",
general: "General"
}, "right");
/* ================= RESULT ================= */
function updateResult() {
const result = document.getElementById("combo-result");
if (!selectedLeft || !selectedRight) {
result.style.display = "none";
return;
}
result.style.display = "block";
if (selectedLeft === "flame_resonance" && selectedRight === "burn") {
result.innerHTML = "Max Burn Stack +2, Burn Duration -20%. Flash Effect: Burn DMG +5%";
} else {
result.innerHTML = "No data for this combination.";
}
}
});
});