MediaWiki:Common.js: Difference between revisions
MediaWiki interface page
More actions
Replacing page with '→Any JavaScript here will be loaded for all users on every page load.: ' |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
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. */ | ||
$(function () { | |||
const key = 'catglobe-categorytree-open'; | |||
function saveOpenNodes() { | |||
const openNodes = []; | |||
$('.CategoryTreeNode:has(.CategoryTreeToggleOpen)').each(function () { | |||
const title = $(this).data('ct-title'); | |||
if (title) openNodes.push(title); | |||
}); | |||
localStorage.setItem(key, JSON.stringify(openNodes)); | |||
} | |||
function restoreOpenNodes() { | |||
const openNodes = JSON.parse(localStorage.getItem(key) || '[]'); | |||
openNodes.forEach(function (title) { | |||
const toggle = $('.CategoryTreeNode[data-ct-title="' + title + '"] .CategoryTreeToggleClosed'); | |||
if (toggle.length) { | |||
toggle.click(); | |||
} | |||
}); | |||
} | |||
// Lưu sau khi nhấn vào ▸ | |||
$(document).on('click', '.CategoryTreeToggle', function () { | |||
setTimeout(saveOpenNodes, 300); | |||
}); | |||
// Khôi phục khi trang load | |||
restoreOpenNodes(); | |||
}); |
Latest revision as of 09:22, 29 July 2025
/* Any JavaScript here will be loaded for all users on every page load. */
$(function () {
const key = 'catglobe-categorytree-open';
function saveOpenNodes() {
const openNodes = [];
$('.CategoryTreeNode:has(.CategoryTreeToggleOpen)').each(function () {
const title = $(this).data('ct-title');
if (title) openNodes.push(title);
});
localStorage.setItem(key, JSON.stringify(openNodes));
}
function restoreOpenNodes() {
const openNodes = JSON.parse(localStorage.getItem(key) || '[]');
openNodes.forEach(function (title) {
const toggle = $('.CategoryTreeNode[data-ct-title="' + title + '"] .CategoryTreeToggleClosed');
if (toggle.length) {
toggle.click();
}
});
}
// Lưu sau khi nhấn vào ▸
$(document).on('click', '.CategoryTreeToggle', function () {
setTimeout(saveOpenNodes, 300);
});
// Khôi phục khi trang load
restoreOpenNodes();
});