Lompat ke isi

MediaWiki:Common.js: Perbedaan antara revisi

Dari Wikisporta, ensiklopedia olahraga
Tidak ada ringkasan suntingan
Tanda: Suntingan perangkat seluler Suntingan peramban seluler
←Mengosongkan halaman
Tanda: Pengosongan Pengembalian manual Suntingan perangkat seluler Suntingan peramban seluler
 
(5 revisi perantara oleh pengguna yang sama tidak ditampilkan)
Baris 1: Baris 1:
mw.hook('wikipage.content').add(function ($content) {
    // KHUSUS HALAMAN UTAMA
    if (!mw.config.get('wgIsMainPage')) {
        return;
    }


    // Cari link bawaan template yang berisi kata "Selengkapnya"
    $content.find('a').filter(function () {
        return $(this).text().indexOf('Selengkapnya') !== -1;
    }).first().each(function () {
        var $link = $(this);
        var $paragraph = $link.closest('p');
        if ($paragraph.length && !$paragraph.hasClass('mp-processed')) {
            $paragraph.addClass('mp-processed');
            var articleUrl = $link.attr('href'); // Ambil URL artikel asli
            // Ubah teks link menjadi "Baca selengkapnya...."
            $link.text('Baca selengkapnya....');
            $link.addClass('featured-readmore-link');
            // Ambil isi teks paragraf, lalu pisahkan link dari teks utama
            var $linkClone = $link.clone();
            $link.remove(); // Hapus link dari posisi asli di paragraf
            var textHtml = $paragraph.html(); // Sisa teks artikel
            // Bungkus teks ke dalam kontainer lipatan
            var $collapsibleDiv = $('<div>', {
                'class': 'mp-collapsible-text',
                'html': textHtml
            });
            // Bungkus link di dalam wrapper bawah
            var $wrapperDiv = $('<div>', {
                'class': 'mp-readmore-wrapper'
            });
            $wrapperDiv.append($linkClone);
            // Susun ulang struktur HTML di dalam paragraf
            $paragraph.empty().append($collapsibleDiv).append($wrapperDiv);
            var isExpanded = false;
            // Handle Klik dengan Animasi Mulus
            mw.loader.using('mediawiki.util', function () {
                $wrapperDiv.on('click', 'a', function (e) {
                    if (!isExpanded) {
                        // KLIK PERTAMA: Buka lipatan teks dengan animasi halus ke bawah
                        e.preventDefault();
                        isExpanded = true;
                        $collapsibleDiv.addClass('is-expanded');
                    } else {
                        // KLIK KEDUA: Langsung arahkan ke halaman artikel asli
                        window.location.href = articleUrl;
                    }
                });
            });
        }
    });
});

Revisi terkini sejak 27 Oktober 2026 13.58