MediaWiki:Common.js: Difference between revisions

From DM Live - the Depeche Mode live encyclopedia for the masses
Jump to navigationJump to search
No edit summary
No edit summary
Line 48: Line 48:
   });
   });
});
});
<script>
  var index = 1;
  function rotateImages() {
    var images = document.querySelectorAll('#image-rotation > div');
    if (index >= images.length) {
      index = 0;
    }
    images.forEach(function(image) {
      image.style.display = 'none';
    });
    images[index].style.display = 'block';
    index++;
    setTimeout(rotateImages, 5000); // Change image every 5 seconds
  }
  rotateImages();
</script>

Revision as of 14:59, 18 March 2024

/* <pre> */
/* Any JavaScript here will be loaded for all users on every page load. */

    // Start of custom navbar js
(function($) { // Begin jQuery
  $(function() { // DOM ready
    // If a link has a dropdown, add sub menu toggle.
    $('nav ul li a:not(:only-child)').click(function(e) {
      $(this).siblings('.nav-dropdown').toggle();
      // Close one dropdown when selecting another
      $('.nav-dropdown').not($(this).siblings()).hide();
      e.stopPropagation();
    });
    // Clicking away from dropdown will remove the dropdown class
    $('html').click(function() {
      $('.nav-dropdown').hide();
    });
    // Toggle open and close nav styles on click
    $('#nav-toggle').click(function() {
      $('nav ul').slideToggle();
    });
    // Hamburger to X toggle
    $('#nav-toggle').on('click', function() {
      this.classList.toggle('active');
    });
  }); // end DOM ready
})(jQuery); // end jQuery
    // End of custom navbar

// Collapsible menus...
$(function() {
  var b = $("#toggle-button");
  var w = $("#toggle");
  var l = $("#toggle-content");
  
  w.height(l.outerHeight(true));

  b.click(function() {
  
    if(w.hasClass('open')) {
      w.removeClass('open');
      w.height(0);
    } else {
      w.addClass('open');
      w.height(l.outerHeight(true));
    }
  
  });
});

<script>
  var index = 1;
  function rotateImages() {
    var images = document.querySelectorAll('#image-rotation > div');
    if (index >= images.length) {
      index = 0;
    }
    images.forEach(function(image) {
      image.style.display = 'none';
    });
    images[index].style.display = 'block';
    index++;
    setTimeout(rotateImages, 5000); // Change image every 5 seconds
  }
  rotateImages();
</script>