Difference between revisions of "MediaWiki:Common.js"

From limswiki
Jump to navigation Jump to search
 
(33 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Any JavaScript here will be loaded for all users on every page load. */
/* Any JavaScript here will be loaded for all users on every page load. */
var iframeAdjust = function() {
    if (parent && parent.setIframeHeight) {
        parent.setIframeHeight('wiki-iframe', 150);
        parent.setIframeHeight('wiki-iframe', $(document).height());
    }
}
   
   
$(document).ready(function() {
$(document).ready(function() {
     $('.iframe-body #saved-book-links a.external').click(function(e) {
     $('.iframe-body #saved-book-links a.external').click(function(e) {
         e.preventDefault();
         e.preventDefault();
         var href = $(this).attr('href');
         var href = $(this).attr('href').replace(/^([^\:]*\:\/\/)[^\/]*(.*)$/, '$1' + window.location.hostname + '$2');
        console.log(href);
         window.open(href, 'Saved_book');
         window.open(href, 'Saved_book');
     });
     });
  $('.iframe-body a.image').attr('target', '_blank');
  var ph = $('.table-of-contents-placeholder');
  if (ph.length) {
    $.get('/wiki/index.php?title=Contents', function(data) {
      var toc = $(data).find('.table-of-contents-full').attr('class', 'table-of-contents');
      ph.before(toc).remove();
      toc.find('ul ul').hide();
      var title = window.location.search.replace(/^.*title=([^&]*).*$/, "$1");
      var self = toc.find("a[href$='title=" + title + "']");
      self.each(function() { $(this).before($("<strong />").addClass('selflink').text($(this).text())).remove(); });
      toc.find('li:has(ul) > a, li:has(ul) > .selflink').each(function() {
        var span = $('<span class="toggle-button"></span>');
        $(this).addClass('expandable-link').before(span);
        span.click(function() {
          $(this).toggleClass('toggle-button-open');
          $(this).siblings('ul').slideToggle(100);
        });
      });
      toc.find('.selflink').parents('li').each(function() {
        $(this).children('.toggle-button').addClass('toggle-button-open');
        $(this).children('ul').show();
      });
      iframeAdjust();
    });
  }
});
});


$(window).load(function() {
$(window).load(iframeAdjust);
    if (parent && parent.setIframeHeight) {
        parent.setIframeHeight('wiki-iframe', 150);
        parent.setIframeHeight('wiki-iframe', $(document).height());
    }
});

Latest revision as of 13:55, 19 December 2012

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

var iframeAdjust = function() {
    if (parent && parent.setIframeHeight) {
        parent.setIframeHeight('wiki-iframe', 150);
        parent.setIframeHeight('wiki-iframe', $(document).height());
    }
}
 
$(document).ready(function() {

    $('.iframe-body #saved-book-links a.external').click(function(e) {
        e.preventDefault();
        var href = $(this).attr('href').replace(/^([^\:]*\:\/\/)[^\/]*(.*)$/, '$1' + window.location.hostname + '$2');
        console.log(href);
        window.open(href, 'Saved_book');
    });

  $('.iframe-body a.image').attr('target', '_blank');

  var ph = $('.table-of-contents-placeholder');
  if (ph.length) {
    $.get('/wiki/index.php?title=Contents', function(data) {
      var toc = $(data).find('.table-of-contents-full').attr('class', 'table-of-contents');
      ph.before(toc).remove();
      toc.find('ul ul').hide();
      var title = window.location.search.replace(/^.*title=([^&]*).*$/, "$1");
      var self = toc.find("a[href$='title=" + title + "']");
      self.each(function() { $(this).before($("<strong />").addClass('selflink').text($(this).text())).remove(); });
      toc.find('li:has(ul) > a, li:has(ul) > .selflink').each(function() {
        var span = $('<span class="toggle-button"></span>');
        $(this).addClass('expandable-link').before(span);
        span.click(function() {
          $(this).toggleClass('toggle-button-open');
          $(this).siblings('ul').slideToggle(100);
        });
      });
      toc.find('.selflink').parents('li').each(function() {
        $(this).children('.toggle-button').addClass('toggle-button-open');
        $(this).children('ul').show();
      });
      iframeAdjust();
    });
  }
});

$(window).load(iframeAdjust);