For the latest updates, send a blank email to our SUBSCRIPTION ADDRESS
HEADLINES | CLASSIFIED | SPORTS | FORUM | BUSINESS | ENTERTAINMENT
Vol. 1, Issue 9
The News Organ of Liberty City
Thursday October 18th, 2001
Seplogo.gif
" Yesterday's News Today "

MediaWiki:Monobook.js: Difference between revisions

From Liberty Tree
Jump to navigationJump to search
No edit summary
(Undo revision 1414 by Lazlow (talk))
Line 2: Line 2:


$(document).ready(function(){
$(document).ready(function(){
   // Helper function that converts a container into a select dropdown.
   var $archives = $("#p-ARCHIVES");
  function createSelectFromContainer(containerSelector, selectId) {
  var dropdownTitle = $archives.find("h3").text();
    var $container = $(containerSelector);
 
    var dropdownTitle = $container.find("h3").text();
  var $label = $("<label>").attr("for", "archive-select").text(dropdownTitle);
   
 
    // Create a label element.
  var $select = $("<select>")
    var $label = $("<label>").attr("for", selectId).text(dropdownTitle);
                  .attr("id", "archive-select");
   
 
    // Create the select element.
  var $defaultOption = $("<option>")
    var $select = $("<select>").attr("id", selectId);
   
    // Add a default, disabled option.
    var $defaultOption = $("<option>")
                           .attr("value", "")
                           .attr("value", "")
                           .text(dropdownTitle)
                           .text(dropdownTitle)
                           .prop("disabled", true)
                           .prop("disabled", true)
                           .prop("selected", true);
                           .prop("selected", true);
    $select.append($defaultOption);
  $select.append($defaultOption);
   
 
    // Create options from each list item.
  $archives.find("div > ul > li").each(function(){
    $container.find("div > ul > li").each(function(){
    var $anchor = $(this).find("a");
      var $anchor = $(this).find("a");
    var text = $anchor.text();
      var text = $anchor.text();
    var value = $anchor.attr("href") || text;
      var value = $anchor.attr("href") || text;
    var $option = $("<option>").attr("value", value).text(text);
      var $option = $("<option>").attr("value", value).text(text);
    $select.append($option);
      $select.append($option);
  });
    });
 
   
  // Append the new elements to the container.
    // Replace the container's content with the label and the new select.
  $archives.empty().append($label).append($select);
    $container.empty().append($label).append($select);
 
   
  // Attach the change event handler via jQuery.
    // Bind a change event that redirects based on the selected option.
  $("#archive-select").on("change", function(){
    $select.on("change", function(){
    var url = $(this).val();
      var url = $(this).val();
    if (url) {
      if (url) {
      window.location.href = url;
        window.location.href = url;
    }
      }
  });
    });
  }
    
    
   // Apply the transformation to both containers.
   $(document).on("change", "#archive-select-mobilejs", function(){
  createSelectFromContainer("#p-ARCHIVES", "archive-select");
    var url = $(this).val();
   createSelectFromContainer("#p-ARCHIVES-mobilejs", "archive-select-mobilejs");
    if (url) {
      window.location.href = url;
    }
   });
});
});

Revision as of 11:17, 6 February 2025

/* All JavaScript here will be loaded for users of the MonoBook skin */

$(document).ready(function(){
  var $archives = $("#p-ARCHIVES");
  var dropdownTitle = $archives.find("h3").text();
  
  var $label = $("<label>").attr("for", "archive-select").text(dropdownTitle);
  
  var $select = $("<select>")
                  .attr("id", "archive-select");

  var $defaultOption = $("<option>")
                          .attr("value", "")
                          .text(dropdownTitle)
                          .prop("disabled", true)
                          .prop("selected", true);
  $select.append($defaultOption);
  
  $archives.find("div > ul > li").each(function(){
    var $anchor = $(this).find("a");
    var text = $anchor.text();
    var value = $anchor.attr("href") || text;
    var $option = $("<option>").attr("value", value).text(text);
    $select.append($option);
  });
  
  // Append the new elements to the container.
  $archives.empty().append($label).append($select);
  
  // Attach the change event handler via jQuery.
  $("#archive-select").on("change", function(){
    var url = $(this).val();
    if (url) {
      window.location.href = url;
    }
  });
  
  $(document).on("change", "#archive-select-mobilejs", function(){
    var url = $(this).val();
    if (url) {
      window.location.href = url;
    }
  });
});