MediaWiki: Common.js: Perbedaan antara revisi
Dari GBI Danau Bogor Raya
Tidak ada ringkasan suntingan Tanda: Dikembalikan |
Tidak ada ringkasan suntingan Tanda: Dikembalikan |
||
| Baris 61: | Baris 61: | ||
$(document).ready(function () { | $(document).ready(function () { | ||
// | // Memantau event ketika elemen collapse Bootstrap selesai terbuka sempurna | ||
$(document).on('shown.bs.collapse', '.collapse', function () { | |||
$( | |||
// | // Targetkan row yang memiliki atribut data-masonry sesuai template Anda | ||
var $grid = $('.row[data-masonry]'); | |||
// Berikan delay kecil (300ms) untuk memastikan transisi menu/collapse selesai | |||
// dan tinggi elemen yang di-expand sudah maksimal saat dihitung ulang | |||
setTimeout(function() { | |||
// Cek inisialisasi lewat metode jQuery | |||
if ($grid.data('masonry')) { | |||
$grid.masonry('layout'); | |||
} | |||
// Jika auto-init via data-attribute, gunakan window.Masonry untuk memicu layout ulang | |||
else if (typeof Masonry !== 'undefined') { | |||
$grid.each(function() { | |||
var msnry = Masonry.data(this); | |||
if (msnry) { | |||
msnry.layout(); | |||
} | |||
}); | |||
} | |||
}, 300); | |||
}); | }); | ||
}); | }); | ||
}); | }); | ||
$activeGrid.imagesLoaded(function() { | $activeGrid.imagesLoaded(function() { | ||
Revisi per 3 Juli 2026 10.10
/* JavaScript yang ada di sini akan diterapkan untuk semua kulit. */
/* Code dari MediaWiki:Common.js sebagian besar dipindahkan ke MediaWiki_Talk:Common.js sejak 11 Oktober 2022 */
$(document).ready(function() {
$('.carousel').carousel();
});
$(document).ready(function() {
$('#myCarousel').carousel();
});
/*
$('button').click(function(){ //you can give id or class name here for $('button')
$(this).text(function(i,old){
return old=='+' ? '-' : '+';
});
});
*/
/* Didapat dari:
https://stackoverflow.com/questions/23101966/bootstrap-alert-auto-close
Menggunakan id="success-alert"
*/
$("#alert-hideable").fadeTo(10000, 500).slideUp(500, function(){
$("#alert-hideable").slideUp(500);
});
$("#alert-hideable-1").fadeTo(10000, 500).slideUp(500, function(){
$("#alert-hideable-1").slideUp(500);
});
$("#alert-hideable-2").fadeTo(10000, 500).slideUp(500, function(){
$("#alert-hideable-2").slideUp(500);
});
var one = document.querySelector("#sidebar-right");
var children = document.querySelector(".catlinks").children;
Array.prototype.forEach.call(children, function (child) {
one.appendChild(child);
});
// Optimize LCP image: remove lazy loading and set high fetch priority
mw.hook('wikipage.content').add(function() {
var firstImg = document.querySelector('#mw-content-text img');
if (firstImg) {
firstImg.loading = 'eager';
firstImg.fetchPriority = 'high';
}
});
// Pastikan library core MediaWiki dan jQuery sudah siap
mw.loader.using(['javascript.util', 'jquery']).then(function () {
$(document).ready(function () {
// Memantau event ketika elemen collapse Bootstrap selesai terbuka sempurna
$(document).on('shown.bs.collapse', '.collapse', function () {
// Targetkan row yang memiliki atribut data-masonry sesuai template Anda
var $grid = $('.row[data-masonry]');
// Berikan delay kecil (300ms) untuk memastikan transisi menu/collapse selesai
// dan tinggi elemen yang di-expand sudah maksimal saat dihitung ulang
setTimeout(function() {
// Cek inisialisasi lewat metode jQuery
if ($grid.data('masonry')) {
$grid.masonry('layout');
}
// Jika auto-init via data-attribute, gunakan window.Masonry untuk memicu layout ulang
else if (typeof Masonry !== 'undefined') {
$grid.each(function() {
var msnry = Masonry.data(this);
if (msnry) {
msnry.layout();
}
});
}
}, 300);
});
});
});
$activeGrid.imagesLoaded(function() {
$activeGrid.masonry('layout');
});
$('.collapse').on('shown.bs.collapse', function () {
var $grid = $('.grid');
// Berikan delay kecil (misal 200ms) agar transisi selesai & gambar mulai ter-render
setTimeout(function() {
if ($grid.data('masonry')) {
$grid.masonry('layout');
}
}, 200);
});