MediaWiki:Common.js: mudanças entre as edições

De otPokemon Wiki
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
 
(156 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
/* Códigos JavaScript aqui colocados serão carregados por todos aqueles que acessarem alguma página deste wiki */
var coll1 = document.getElementsByClassName("collapsible-battle-pass");
var coll2 = document.getElementsByClassName("collapsible-pokemon");


function toggleContent(clickedButton, contentToToggle) {
  var allContents = document.getElementsByClassName("content");
  for (var j = 0; j < allContents.length; j++) {
    allContents[j].style.maxHeight = null;
  }


   let slides = document.querySelectorAll('.mySlides');
   var allButtons = document.getElementsByClassName("collapsible-battle-pass");
        let dots = document.querySelectorAll('.dot');
  for (var k = 0; k < allButtons.length; k++) {
        let slideIndex = 1;
    allButtons[k].classList.remove("active");
        let timeoutID;
  }
  allButtons = document.getElementsByClassName("collapsible-pokemon");
  for (var k = 0; k < allButtons.length; k++) {
    allButtons[k].classList.remove("active");
  }


        const showSlides = (n) => {
  if (contentToToggle.style.maxHeight) {
            let i;
    contentToToggle.style.maxHeight = null;
       
  } else {
    contentToToggle.style.maxHeight = contentToToggle.scrollHeight + "px";
  }


            if (n > slides.length) {
  clickedButton.classList.add("active");
                slideIndex = 1;
}
            }
            if (n < 1) {
                slideIndex = slides.length;
            }


            for (i = 0; i < slides.length; i++) {
for (var i = 0; i < coll1.length; i++) {
                slides[i].style.display = "none";
  coll1[i].addEventListener("click", function() {
            }
    var content = this.nextElementSibling;
    toggleContent(this, content); 
  });
}


            for (i = 0; i < slides.length; i++) {
for (var i = 0; i < coll2.length; i++) {
                dots[i].setAttribute('class', 'dot');
  coll2[i].addEventListener("click", function() {
            }
    var content = this.nextElementSibling;  
    toggleContent(this, content);
  });
}
/* Pokedex */
var coll3 = document.getElementsByClassName("collapsible-pokedex");


function toggleContent(clickedButton, contentToToggle) {
  var allContents = document.getElementsByClassName("content");
  for (var j = 0; j < allContents.length; j++) {
    allContents[j].style.maxHeight = null;
  }


            slides[slideIndex - 1].style.display = 'block';
  var allButtons2 = document.getElementsByClassName("collapsible-pokedex");
            dots[slideIndex - 1].setAttribute('class', 'dot active');
  for (var k = 0; k < allButtons2.length; k++) {
            clearTimeout(timeoutID);
    allButtons2[k].classList.remove("active");
            timeoutID = setTimeout(autoSlides, 2000);
  }
        };


        const plusSlides = (n) => {
  if (contentToToggle.style.maxHeight) {
            showSlides(slideIndex += n);
    contentToToggle.style.maxHeight = null;
        };
  } else {
    contentToToggle.style.maxHeight = contentToToggle.scrollHeight + "px";
  }


        const currentSlide = (n) => {
  clickedButton.classList.add("active");
            showSlides(slideIndex = n);
}
        };


        function autoSlides() {
for (var i = 0; i < coll3.length; i++) {
            let i;
  coll3[i].addEventListener("click", function() {
    var content = this.nextElementSibling;
    toggleContent(this, content); 
  });
}


            for (i = 0; i < slides.length; i++) {
/* Pokedex */
                slides[i].style.display = "none";
            }


            slideIndex++;
function toggleShinyList() {
            if (slideIndex > slides.length) {
    var shinyList = document.getElementById("shiny-list");
                slideIndex = 1;
    if (shinyList.style.display === "none" || shinyList.style.display === "") {
            }
        shinyList.style.display = "block";
    } else {
        shinyList.style.display = "flex";
    }
}


            for (i = 0; i < slides.length; i++) {
                dots[i].setAttribute('class', 'dot');
            }


            slides[slideIndex - 1].style.display = "block";
mw.loader.using('jquery', function () {
            dots[slideIndex - 1].setAttribute('class', 'dot active');
    $(document).ready(function () {
            timeoutID = setTimeout(autoSlides, 2000);
        var isAscending = true;
        }
        var $sortButton = $('<div class="sort-button" style="width: 60px; height: 50px; background-image: url(https://wiki.otpokemon.com/images/9/92/O-c.png); background-position: center; background-repeat: no-repeat; background-size: cover; border-radius: 3px; cursor: pointer; float: right; margin-right: 0.5%;margin-top: -50px;"></div>');
        $('.square-div-shiny').before($sortButton);
   


         autoSlides();
         $sortButton.on('click', function () {
            var $container = $('.square-div-shiny');
            var $boxes = $container.children('.square-box-shiny');
 
            $boxes.sort(function (a, b) {
                var numA = parseInt($(a).find('.square-name-shiny').text().match(/\d+/)[0], 10);
                var numB = parseInt($(b).find('.square-name-shiny').text().match(/\d+/)[0], 10);
 
                return isAscending ? numA - numB : numB - numA;
            });
 
            $container.append($boxes);
            isAscending = !isAscending;
 
            var newImage = isAscending
                ? 'https://wiki.otpokemon.com/images/e/e2/O-d.png'
                : 'https://wiki.otpokemon.com/images/9/92/O-c.png';
           
            $sortButton.css('background-image', 'url(' + newImage + ')');
        });
    });
});

Edição atual tal como às 13h51min de 6 de abril de 2025

var coll1 = document.getElementsByClassName("collapsible-battle-pass");
var coll2 = document.getElementsByClassName("collapsible-pokemon");

function toggleContent(clickedButton, contentToToggle) {
  var allContents = document.getElementsByClassName("content");
  for (var j = 0; j < allContents.length; j++) {
    allContents[j].style.maxHeight = null; 
  }

  var allButtons = document.getElementsByClassName("collapsible-battle-pass");
  for (var k = 0; k < allButtons.length; k++) {
    allButtons[k].classList.remove("active");
  }
  allButtons = document.getElementsByClassName("collapsible-pokemon");
  for (var k = 0; k < allButtons.length; k++) {
    allButtons[k].classList.remove("active");
  }

  if (contentToToggle.style.maxHeight) {
    contentToToggle.style.maxHeight = null; 
  } else {
    contentToToggle.style.maxHeight = contentToToggle.scrollHeight + "px";
  }

  clickedButton.classList.add("active");
}

for (var i = 0; i < coll1.length; i++) {
  coll1[i].addEventListener("click", function() {
    var content = this.nextElementSibling; 
    toggleContent(this, content);  
  });
}

for (var i = 0; i < coll2.length; i++) {
  coll2[i].addEventListener("click", function() {
    var content = this.nextElementSibling; 
    toggleContent(this, content); 
  });
}
/* Pokedex */
var coll3 = document.getElementsByClassName("collapsible-pokedex");

function toggleContent(clickedButton, contentToToggle) {
  var allContents = document.getElementsByClassName("content");
  for (var j = 0; j < allContents.length; j++) {
    allContents[j].style.maxHeight = null; 
  }

  var allButtons2 = document.getElementsByClassName("collapsible-pokedex");
  for (var k = 0; k < allButtons2.length; k++) {
    allButtons2[k].classList.remove("active");
  }

  if (contentToToggle.style.maxHeight) {
    contentToToggle.style.maxHeight = null; 
  } else {
    contentToToggle.style.maxHeight = contentToToggle.scrollHeight + "px";
  }

  clickedButton.classList.add("active");
}

for (var i = 0; i < coll3.length; i++) {
  coll3[i].addEventListener("click", function() {
    var content = this.nextElementSibling; 
    toggleContent(this, content);  
  });
}

/* Pokedex */

function toggleShinyList() {
    var shinyList = document.getElementById("shiny-list");
    if (shinyList.style.display === "none" || shinyList.style.display === "") {
        shinyList.style.display = "block";
    } else {
        shinyList.style.display = "flex";
    }
}


mw.loader.using('jquery', function () {
    $(document).ready(function () {
        var isAscending = true;
        var $sortButton = $('<div class="sort-button" style="width: 60px; height: 50px; background-image: url(https://wiki.otpokemon.com/images/9/92/O-c.png); background-position: center; background-repeat: no-repeat; background-size: cover; border-radius: 3px; cursor: pointer; float: right; margin-right: 0.5%;margin-top: -50px;"></div>');
        $('.square-div-shiny').before($sortButton);
    

        $sortButton.on('click', function () {
            var $container = $('.square-div-shiny');
            var $boxes = $container.children('.square-box-shiny');

            $boxes.sort(function (a, b) {
                var numA = parseInt($(a).find('.square-name-shiny').text().match(/\d+/)[0], 10);
                var numB = parseInt($(b).find('.square-name-shiny').text().match(/\d+/)[0], 10);

                return isAscending ? numA - numB : numB - numA;
            });

            $container.append($boxes);
            isAscending = !isAscending;

            var newImage = isAscending 
                ? 'https://wiki.otpokemon.com/images/e/e2/O-d.png' 
                : 'https://wiki.otpokemon.com/images/9/92/O-c.png';
            
            $sortButton.css('background-image', 'url(' + newImage + ')');
        });
    });
});