MediaWiki:Common.js: различия между версиями
Материал из SAMP
Нет описания правки |
Нет описания правки |
||
(не показаны 24 промежуточные версии этого же участника) | |||
Строка 3: | Строка 3: | ||
$(document).on('click','.index_elem', function(event) | $(document).on('click','.index_elem', function(event) | ||
{ | { | ||
if ($(this).hasClass('active')) { $(this).removeClass('active'); } | var target = event["target"]["parentElement"]["className"]; | ||
if (target != "index_subelems") | |||
var | { | ||
if ($(this).hasClass('active')) { $(this).removeClass('active'); } | |||
else { $(this).addClass('active'); } | |||
} | |||
}); | |||
$(document).on('click','.index_subelem', function() | |||
{ | |||
var link = $(this).html(); | |||
document.location.href = 'https://wiki.samp.world/index.php/'+link; | |||
}); | |||
mw.loader.using(['jquery']).then(function () { | |||
$(function () { | |||
if (window.innerWidth >= 768) return; | |||
$('#mw-content-text h2').each(function () | |||
{ | |||
const $header = $(this); | |||
if ($header.closest('#toc').length > 0) return; | |||
const $content = $header.nextUntil('h2'); | |||
if ($content.length === 0) return; | |||
$content.hide(); | |||
const $btn = $('<span class="arrow_hide_section">').text(''); | |||
// Добавляем кнопку | |||
$header.prepend($btn); | |||
// Вся строка заголовка кликабельна | |||
$header.css('cursor', 'pointer').click(function () { | |||
const visible = $content.is(':visible'); | |||
$content.toggle(); | |||
if (visible) { | |||
$header.removeClass('vis'); | |||
} else { | |||
$header.addClass('vis'); | |||
} | |||
}); | |||
}); | |||
}); | |||
}); | }); |
Текущая версия от 00:06, 2 августа 2025
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */ $(document).on('click','.index_elem', function(event) { var target = event["target"]["parentElement"]["className"]; if (target != "index_subelems") { if ($(this).hasClass('active')) { $(this).removeClass('active'); } else { $(this).addClass('active'); } } }); $(document).on('click','.index_subelem', function() { var link = $(this).html(); document.location.href = 'https://wiki.samp.world/index.php/'+link; }); mw.loader.using(['jquery']).then(function () { $(function () { if (window.innerWidth >= 768) return; $('#mw-content-text h2').each(function () { const $header = $(this); if ($header.closest('#toc').length > 0) return; const $content = $header.nextUntil('h2'); if ($content.length === 0) return; $content.hide(); const $btn = $('<span class="arrow_hide_section">').text(''); // Добавляем кнопку $header.prepend($btn); // Вся строка заголовка кликабельна $header.css('cursor', 'pointer').click(function () { const visible = $content.is(':visible'); $content.toggle(); if (visible) { $header.removeClass('vis'); } else { $header.addClass('vis'); } }); }); }); });